Jump to content
Rpg²S Forum

[RGSS2-3]MSX - XP Characters on VX/VXAce


Melosx
 Share

Recommended Posts

MSX - XP Characters on VX

Descrizione

Lo script permette di usare i chara xp nel vx semplicemente inserendo il tag
$xp
prima del nome del file.
Potete quindi usare i normali VX insieme a quelli dell'XP.
Ce ne saranno già molti ma visto che non avevo internet in quel periodo me lo son fatto da me


Autore

Melosx

 

Istruzioni per l'uso

Inserire sotto Materials e sopra Main. Rinominare i file dei characters aggiungendo prima del nome '$xp' senza virgolette.


Screenshot
http://i41.tinypic.com/hvw5eu.png

 

 

 

Script + Patch

 


MSX - XP Characters on VX

#==============================================================================
# ** MSX - XP Characters on VX/VXAce
#==============================================================================
# Autore: Melosx
# Ottimizzato da: clyde
# Versione: 1.1
#
#==============================================================================
# * Descrizione
# -----------------------------------------------------------------------------
# Lo script permette di usare i chara xp nel vx semplicemente inserendo il tag
# $xp
# prima del nome del file.
# Potete quindi usare i normali VX/VXAce insieme a quelli dell'XP.
#==============================================================================
#==============================================================================
# ** Sprite_Character
#==============================================================================
class Sprite_Character < Sprite_Base
	
	def set_character_bitmap
		self.bitmap = Cache.character(@character_name)
		if @character_name && @character_name.include?('$xp')
			@cw = bitmap.width / 4
			@ch = bitmap.height / 4
		else
			sign = @character_name[/^[\!\$]./]
			if sign && sign.include?('$')
				@cw = bitmap.width / 3
				@ch = bitmap.height / 4
			else
				@cw = bitmap.width / 12
				@ch = bitmap.height / 8
			end
		end
		self.ox = @cw / 2
		self.oy = @ch
	end
	
	alias update_src_rect_melosx update_src_rect
	def update_src_rect
		if @character_name && @character_name.include?('$xp')
			if @tile_id == 0
				pattern = @character.pattern > 0 ? @character.pattern - 1 : 3
				sx = pattern * @cw
				sy = (@character.direction - 2) / 2 * @ch
				self.src_rect.set(sx, sy, @cw, @ch)
			end
			return
		end
		update_src_rect_melosx
	end
	
end
#==============================================================================
# ** Window_Base
#==============================================================================
class Window_Base < Window
	
	def draw_character(character_name, character_index, x, y)
		return if character_name == nil
		bitmap = Cache.character(character_name)
		if character_name.include?('$xp')
			cw = bitmap.width / 4
			ch = bitmap.height / 4
		else
			sign = character_name[/^[\!\$]./]
			if sign && sign.include?('$')
				cw = bitmap.width / 3
				ch = bitmap.height / 4
			else
				cw = bitmap.width / 12
				ch = bitmap.height / 8
			end
			n = character_index
		end
		src_rect = Rect.new((n%4*3+1)*cw, (n/4*4)*ch, cw, ch)
		self.contents.blt(x - cw / 2, y - ch, bitmap, src_rect)
	end
end

 

 

 

 

 

Patch per Tankentai

#==============================================================================
# ** MSX - XP Characters on VX - Tankentai Patch
#==============================================================================
# Autore: Melosx
# Versione: 1.0
#
#==============================================================================
# * Istruzioni
# -----------------------------------------------------------------------------
# Inserire la patch sotto lo script Sideview 1.
# La patch è stata creata sulla versione 3.4e, l'ultima release al momento
# della creazione della patch.
# Se avete problemi con versioni diverse dalla 3.4e segnalatemelo.
#==============================================================================

#==============================================================================
# ** Sprite_Battler
#==============================================================================

class Sprite_Battler < Sprite_Base
	
	def make_battler
		@battler.base_position
		@battler_hue = @battler.battler_hue
		if @anime_flug
			@weapon_R = Sprite_Weapon.new(viewport,@battler)
			@battler_name = @battler.character_name if @battler.actor?
			@battler_name = @battler.battler_name unless @battler.actor?
			self.mirror = true if !@battler.actor? && @battler.action_mirror
			if @battler_hue != nil
				self.bitmap = Cache.character(@battler_name, @battler_hue) if N01::WALK_ANIME
				self.bitmap = Cache.character(@battler_name + "_1", @battler_hue) unless N01::WALK_ANIME
			else
				self.bitmap = Cache.character(@battler_name) if N01::WALK_ANIME
				self.bitmap = Cache.character(@battler_name + "_1") unless N01::WALK_ANIME
			end
			#=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-#
			
			if @battler.character_name != nil and @battler.character_name.include?('$xp')
				@base_width = 4
				@width = self.bitmap.width / @base_width
				@height = self.bitmap.height / @base_height
				@sx = @pattern * @width
				@sy = @anime_kind * @height
			else
				@width = self.bitmap.width / @base_width
				@height = self.bitmap.height / @base_height
				@sx = @pattern * @width
				@sy = @anime_kind * @height
			end
			self.src_rect.set(@sx, @sy, @width, @height)
			
			#=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-#
		else
			@battler_name = @battler.battler_name
			self.bitmap = Cache.battler(@battler_name, @battler_hue)
			@width = bitmap.width
			@height = bitmap.height
		end
		if $back_attack && @battler.actor?
			self.mirror = true
		elsif $back_attack && !@battler.actor?
			self.mirror = true
			self.mirror = false if @battler.action_mirror
		else
			self.mirror = false
			self.mirror = true if !@battler.actor? && @battler.action_mirror
		end
		@weapon_R.mirroring if self.mirror && @weapon_R != nil
		@battler.reset_coordinate
		self.ox = @width / 2
		self.oy = @height * 2 / 3
		update_move
		@move_anime = Sprite_MoveAnime.new(viewport,battler)
		@picture = Sprite.new
		@damage = Sprite_Damage.new(viewport,battler)
		@battler.graphics_width = @width
		@battler.graphics_height = @height
	end
	
	
	def update_anime_pattern
		return @frame -= 1 if @frame != 0
		@weapon_R.action if @weapon_action && @weapon_R != nil
		if @battler.actor? and @battler.character_name != nil and @battler.character_name.include?('$xp')
			if @pattern_back
				if @anime_loop == 0
					if @reverse
						@pattern -= 1
						@pattern = (@pattern < 0 ? @base_width - 1 : @pattern)
						if @pattern == -1
							@pattern_back = false
							@anime_end = true
						end
					else
						@pattern += 1
						@pattern = (@pattern > @base_width - 1 ? 0 : @pattern)
						if @pattern == @base_width
							@pattern_back = false
							@anime_end = true
						end
					end
				else
					@anime_end = true
					if @anime_loop == 1
						@pattern = 0 if !@reverse
						@pattern = @base_width - 1 if @reverse
						@pattern_back = false
					end
				end
			else
				if @reverse
					@pattern -= 1
					@pattern = (@pattern < 0 ? @base_width - 1 : @pattern)
					@pattern_back = true if @pattern == 0
				else
					@pattern += 1
					@pattern = (@pattern > @base_width - 1 ? 0 : @pattern)
					@pattern_back = true if @pattern == @base_width - 1
				end
			end
		else
			if @pattern_back
				if @anime_loop == 0
					if @reverse
						@pattern += 1
						if @pattern == @base_width - 1
							@pattern_back = false
							@anime_end = true
						end
					else
						@pattern -= 1
						if @pattern == 0
							@pattern_back = false
							@anime_end = true
						end
					end
				else
					@anime_end = true
					if @anime_loop == 1
						@pattern = 0 if !@reverse
						@pattern = @base_width - 1 if @reverse
						@pattern_back = false
					end
				end
			else
				if @reverse
					@pattern -= 1
					@pattern_back = true if @pattern == 0
				else
					@pattern += 1
					@pattern_back = true if @pattern == @base_width - 1
				end
			end
		end
		@frame = @anime_speed
		return if @anime_freeze
		return unless @anime_flug
		@sx = @pattern * @width
		@sy = @anime_kind * @height
		self.src_rect.set(@sx, @sy, @width, @height)
	end
	
end

 

 

 

Bugs e Conflitti Noti

N/A

http://i.imgur.com/ROhv4te.png



287x66-white.png

Link to comment
Share on other sites

Sì, mi pare già ci fosse, ma uno fatto con le proprie manine vale il doppio :sisi: XD

^ ^

(\_/)
(^ ^) <----coniglietto rosso, me!
(> <)


Il mio Tumblr dove seguire i miei progetti, i progetti della Reverie : : Project ^ ^

http://i.imgur.com/KdUDtQt.png disponibile su Google Play, qui i dettagli! ^ ^

http://i.imgur.com/FwnGMI3.png completo! Giocabile online, qui i dettagli! ^ ^

REVERIE : : RENDEZVOUS (In allenamento per apprendere le buone arti prima di cominciarlo per bene ^ ^) Trovate i dettagli qui insieme alla mia intervista (non utilizzerò più rpgmaker) ^ ^

 

SUWOnzB.jpg 🖤
http://www.rpg2s.net/dax_games/r2s_regali2s.png E:3 http://www.rpg2s.net/dax_games/xmas/gifnatale123.gif
http://i.imgur.com/FfvHCGG.png by Testament (notare dettaglio in basso a destra)! E:3
http://i.imgur.com/MpaUphY.jpg by Idriu E:3

Membro Onorario, Ambasciatore dei Coniglietti (Membro n.44)

http://i.imgur.com/PgUqHPm.png
Ufficiale
"Ad opera della sua onestà e del suo completo appoggio alla causa dei Panda, Guardian Of Irael viene ufficialmente considerato un Membro portante del Partito, e Ambasciatore del suo Popolo presso di noi"


http://i.imgur.com/TbRr4iS.png<- Grazie Testament E:3
Ricorda...se rivolgi il tuo sguardo ^ ^ a Guardian anche Guardian volge il suo sguardo ^ ^ a te ^ ^
http://i.imgur.com/u8UJ4Vm.gifby Flame ^ ^
http://i.imgur.com/VbggEKS.gifhttp://i.imgur.com/2tJmjFJ.gifhttp://projectste.altervista.org/Our_Hero_adotta/ado2.png
Grazie Testament XD Fan n°1 ufficiale di PQ! :D

Viva
il Rhaxen! <- Folletto te lo avevo detto (fa pure rima) che non
avevo programmi di grafica per fare un banner su questo pc XD (ora ho di
nuovo il mio PC veramente :D)

Rosso Guardiano della
http://i.imgur.com/Os5rvhx.png

Rpg2s RPG BY FORUM:

Nome: Darth Reveal

 

PV totali 2
PA totali 16

Descrizione: ragazzo dai lunghi capelli rossi ed occhi dello stesso colore. Indossa una elegante giacca rossa sopra ad una maglietta nera. Porta pantaloni rossi larghi, una cintura nera e degli stivali dello stesso colore. E' solito trasportare lo spadone dietro la schiena in un fodero apposito. Ha un pendente al collo e tiene ben legato un pezzo di stoffa (che gli sta particolarmente a cuore) intorno al braccio sinistro sotto la giacca, copre una cicatrice.
Bozze vesti non definitive qui.

Equipaggiamento:
Indossa:
60$ e 59$ divisi in due tasche interne
Levaitan

Spada a due mani elsa lunga

Guanti del Defender (2PA)
Anello del linguaggio animale (diventato del Richiamo)

Scrinieri da lanciere (2 PA)

Elmo del Leone (5 PA)

Corazza del Leone in Ferro Corrazzato (7 PA)

ZAINO (20) contenente:
Portamonete in pelle di cinghiale contenente: 100$
Scatola Sanitaria Sigillata (può contenere e tenere al sicuro fino a 4 oggetti curativi) (contiene Benda di pronto soccorso x3, Pozione di cura)
Corda
Bottiglia di idromele
Forma di formaggio
Torcia (serve ad illuminare, dura tre settori)

Fiasca di ceramica con Giglio Amaro (Dona +1PN e Velocità all'utilizzatore)
Ampolla Bianca

Semi di Balissa

 

CAVALLO NORMALE + SELLA (30 +2 armi) contentente:
66$
Benda di pronto soccorso x3
Spada a due mani

Fagotto per Adara (fazzoletto ricamato)


 

Link to comment
Share on other sites

Ottimo, addirittura hai impostato che legge dal nome del file!

"Io non volevo solo partecipare alle discussioni. Volevo avere il potere di farle fallire" [cit.]

http://holyres.altervista.org/UserBoard/BannerOverdrive35.png
http://holyres.altervista.org/UserBoard/Cap3.png

http://www.indiexpo.net/signature/578.png

Miei script per RPG Maker VX Ace:


*NB Tutti i miei script sono protetti da licenza CC - BY http://i.creativecommons.org/l/by/3.0/88x31.png

Questa licenza permette a terzi di distribuire, modificare, ottimizzare ed utilizzare la tua opera come base, anche commercialmente, fino a che ti diano il credito per la creazione originale. Questa è la più accomodante delle licenze offerte. É raccomandata per la diffusione e l'uso massimo di materiali coperti da licenza.

 

 



I miei tutorial:


Come distribuire il gioco - e anche come creare un'installazione professionale!
RGSS in pillole - Guida completa e facile all'RGSS2 e RGSS3 per novizi ed esperti
Come mappare con VX (e VX Ace) - guida base all'uso degli strumenti del mapping
Loop delle musiche - come tagliarle in modo da far venire musiche continue senza interruzioni finali
Creare backup dei progetti - per evitare di uccidervi dopo un errore che ha fatto perdere tutto!

Link to comment
Share on other sites

Mi scuso per il doppio post ma ho aggiunto la patch per il tankentai al primo post.

EDIT: Con l'engine Melody da problemi solo se si usa il movimento a 8 direzioni

Edited by Melosx

http://i.imgur.com/ROhv4te.png



287x66-white.png

Link to comment
Share on other sites

Ebbravo!

"Io non volevo solo partecipare alle discussioni. Volevo avere il potere di farle fallire" [cit.]

http://holyres.altervista.org/UserBoard/BannerOverdrive35.png
http://holyres.altervista.org/UserBoard/Cap3.png

http://www.indiexpo.net/signature/578.png

Miei script per RPG Maker VX Ace:


*NB Tutti i miei script sono protetti da licenza CC - BY http://i.creativecommons.org/l/by/3.0/88x31.png

Questa licenza permette a terzi di distribuire, modificare, ottimizzare ed utilizzare la tua opera come base, anche commercialmente, fino a che ti diano il credito per la creazione originale. Questa è la più accomodante delle licenze offerte. É raccomandata per la diffusione e l'uso massimo di materiali coperti da licenza.

 

 



I miei tutorial:


Come distribuire il gioco - e anche come creare un'installazione professionale!
RGSS in pillole - Guida completa e facile all'RGSS2 e RGSS3 per novizi ed esperti
Come mappare con VX (e VX Ace) - guida base all'uso degli strumenti del mapping
Loop delle musiche - come tagliarle in modo da far venire musiche continue senza interruzioni finali
Creare backup dei progetti - per evitare di uccidervi dopo un errore che ha fatto perdere tutto!

Link to comment
Share on other sites

  • 1 month later...

Ah bene qualcosa allora si salva! XDXD

^ ^

(\_/)
(^ ^) <----coniglietto rosso, me!
(> <)


Il mio Tumblr dove seguire i miei progetti, i progetti della Reverie : : Project ^ ^

http://i.imgur.com/KdUDtQt.png disponibile su Google Play, qui i dettagli! ^ ^

http://i.imgur.com/FwnGMI3.png completo! Giocabile online, qui i dettagli! ^ ^

REVERIE : : RENDEZVOUS (In allenamento per apprendere le buone arti prima di cominciarlo per bene ^ ^) Trovate i dettagli qui insieme alla mia intervista (non utilizzerò più rpgmaker) ^ ^

 

SUWOnzB.jpg 🖤
http://www.rpg2s.net/dax_games/r2s_regali2s.png E:3 http://www.rpg2s.net/dax_games/xmas/gifnatale123.gif
http://i.imgur.com/FfvHCGG.png by Testament (notare dettaglio in basso a destra)! E:3
http://i.imgur.com/MpaUphY.jpg by Idriu E:3

Membro Onorario, Ambasciatore dei Coniglietti (Membro n.44)

http://i.imgur.com/PgUqHPm.png
Ufficiale
"Ad opera della sua onestà e del suo completo appoggio alla causa dei Panda, Guardian Of Irael viene ufficialmente considerato un Membro portante del Partito, e Ambasciatore del suo Popolo presso di noi"


http://i.imgur.com/TbRr4iS.png<- Grazie Testament E:3
Ricorda...se rivolgi il tuo sguardo ^ ^ a Guardian anche Guardian volge il suo sguardo ^ ^ a te ^ ^
http://i.imgur.com/u8UJ4Vm.gifby Flame ^ ^
http://i.imgur.com/VbggEKS.gifhttp://i.imgur.com/2tJmjFJ.gifhttp://projectste.altervista.org/Our_Hero_adotta/ado2.png
Grazie Testament XD Fan n°1 ufficiale di PQ! :D

Viva
il Rhaxen! <- Folletto te lo avevo detto (fa pure rima) che non
avevo programmi di grafica per fare un banner su questo pc XD (ora ho di
nuovo il mio PC veramente :D)

Rosso Guardiano della
http://i.imgur.com/Os5rvhx.png

Rpg2s RPG BY FORUM:

Nome: Darth Reveal

 

PV totali 2
PA totali 16

Descrizione: ragazzo dai lunghi capelli rossi ed occhi dello stesso colore. Indossa una elegante giacca rossa sopra ad una maglietta nera. Porta pantaloni rossi larghi, una cintura nera e degli stivali dello stesso colore. E' solito trasportare lo spadone dietro la schiena in un fodero apposito. Ha un pendente al collo e tiene ben legato un pezzo di stoffa (che gli sta particolarmente a cuore) intorno al braccio sinistro sotto la giacca, copre una cicatrice.
Bozze vesti non definitive qui.

Equipaggiamento:
Indossa:
60$ e 59$ divisi in due tasche interne
Levaitan

Spada a due mani elsa lunga

Guanti del Defender (2PA)
Anello del linguaggio animale (diventato del Richiamo)

Scrinieri da lanciere (2 PA)

Elmo del Leone (5 PA)

Corazza del Leone in Ferro Corrazzato (7 PA)

ZAINO (20) contenente:
Portamonete in pelle di cinghiale contenente: 100$
Scatola Sanitaria Sigillata (può contenere e tenere al sicuro fino a 4 oggetti curativi) (contiene Benda di pronto soccorso x3, Pozione di cura)
Corda
Bottiglia di idromele
Forma di formaggio
Torcia (serve ad illuminare, dura tre settori)

Fiasca di ceramica con Giglio Amaro (Dona +1PN e Velocità all'utilizzatore)
Ampolla Bianca

Semi di Balissa

 

CAVALLO NORMALE + SELLA (30 +2 armi) contentente:
66$
Benda di pronto soccorso x3
Spada a due mani

Fagotto per Adara (fazzoletto ricamato)


 

Link to comment
Share on other sites

  • 2 months later...
Guest clyde

Fortunatamente lo script funge anche con i 106 script di Yanfly, perchè nessuno di questi va a riscrivere le classi usate dal tuo script. Però quando l'ho guardato meglio mi sono reso conto che si poteva migliorare e badabim badaboom ne ho tirato fuori una versione leggermente migliorata. Più compatta e più veloce (per quanto impercettibile).

 

ATTENZIONE QUELLO CHE SEGUE NON E' IL CODICE DELLO SCRIPT! PER LO SCRIPT ANDARE AL PRIMO POST DEL TOPIC.

 

#==============================================================================
# ** MSX - XP Characters on VX/VXAce
#==============================================================================
# Autore:   Melosx
# Versione: 1.0
#								
#==============================================================================
# * Descrizione
# -----------------------------------------------------------------------------
# Lo script permette di usare i chara xp nel vx semplicemente inserendo il tag
#																  $xp
# prima del nome del file.
# Potete quindi usare i normali VX/VXAce insieme a quelli dell'XP.
#==============================================================================
#==============================================================================
# ** Sprite_Character
#==============================================================================
class Sprite_Character < Sprite_Base

 def set_character_bitmap
self.bitmap = Cache.character(@character_name)
if @character_name && @character_name.include?('$xp')
  @cw = bitmap.width / 4
  @ch = bitmap.height / 4
else
  sign = @character_name[/^[\!\$]./]
  if sign && sign.include?('$')
	@cw = bitmap.width / 3
	@ch = bitmap.height / 4
  else
	@cw = bitmap.width / 12
	@ch = bitmap.height / 8
  end
end
self.ox = @cw / 2
self.oy = @ch
 end

 alias update_src_rect_melosx update_src_rect
 def update_src_rect
if @character_name && @character_name.include?('$xp')
  if @tile_id == 0
	pattern = @character.pattern > 0 ? @character.pattern - 1 : 3
	sx = pattern * @cw
	sy = (@character.direction - 2) / 2 * @ch
	self.src_rect.set(sx, sy, @cw, @ch)
  end
  return
end
update_src_rect_melosx
 end

end
#==============================================================================
# ** Window_Base
#==============================================================================
class Window_Base < Window

 def draw_character(character_name, character_index, x, y)
return if character_name == nil
bitmap = Cache.character(character_name)
if character_name.include?('$xp')
  cw = bitmap.width / 4
  ch = bitmap.height / 4
else
  sign = character_name[/^[\!\$]./]
  if sign && sign.include?('$')
	cw = bitmap.width / 3
	ch = bitmap.height / 4
  else
	cw = bitmap.width / 12
	ch = bitmap.height / 8
  end
  n = character_index
end
src_rect = Rect.new((n%4*3+1)*cw, (n/4*4)*ch, cw, ch)
self.contents.blt(x - cw / 2, y - ch, bitmap, src_rect)
 end

end

Edited by clyde
Link to comment
Share on other sites

Guest clyde
La mia regola è niente credits prima del matrimonio. clyde è un nome senza alcun significato. sono uno scripter che rifugge ogni forma di riconoscimento. In pratica lascia solo melosx e siamo a posto.
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...