Jump to content
Rpg²S Forum
  • 0

Aiuto x le Animazioni


Alucard
 Share

Question

6 answers to this question

Recommended Posts

  • 0

riesumo questo topic dopo 1 anno.

sento puzza di muffa e c'è aria viziata...

 

vorrei sapere se qualcuno... sa rispondere al tizio qui sopra! :D

io in particolare vorrei mostrare le animazioni degli oggetti anche quando sono usati dal menu.

Link to comment
Share on other sites

  • 0
sento puzza di muffa e c'è aria viziata...

eeh...

 

XD

 

comunque se da script vuoi mostrare un animazione puoi farlo su un evento, sul/i giocatore/i e/o sui nemici con l'attributo .animation_id, per farla vedere su menu devo guardare come si può fare

Script!

 

Roba scritta, guide:

 

Applicazioni:

 

Progetti!

http://img69.imageshack.us/img69/2143/userbarctaf.png http://img641.imageshack.us/img641/5227/userbartemplateb.pnghttp://i46.tinypic.com/ac6id0.png

Link to comment
Share on other sites

  • 0
Da quello che ho capito io le animazioni possono essere mostrate solo su degli sprite appartenti alla classe RPG::Sprite o che comunque ereditano questa classe, purtroppo non ne ho la certezza.
Link to comment
Share on other sites

  • 0
Da quello che ho capito io le animazioni possono essere mostrate solo su degli sprite appartenti alla classe RPG::Sprite o che comunque ereditano questa classe, purtroppo non ne ho la certezza.

Guardando la documentazione, ho avuto anch'io la stessa impressione . . .

 

Comunque, uno "sprite" in rpg maker xp può essere anche un'immagine fissa/statica e vuota, cioè con solo il colore di trasparenza . . .

Edited by giver

 


SCRIPT RGSS (RPG Maker XP) VINTAGE LIBRARY [2018+]


Breaking (in ogni senso) News: "Treno deraglia per via del seno di Sakurai Aoi . . ." - Info nello spoiler !!

 


http://afantasymachine.altervista.org/_altervista_ht/NOOOOOOOOOilMIOtreninooooo_500.gif


Non riesco a smettere di essere affascinato da immagini come questa . . .

http://anime.vl-vostok.ru/art/photos2011/17/78049800/wall_VladAnime_WWA_1885-1680x1050.jpg


Alcuni wallpapers che faccio ruotare sul mio vecchio PC . . .


http://afantasymachine.altervista.org/_altervista_ht/gits_window.jpg

http://afantasymachine.altervista.org/_altervista_ht/madoka_group01.jpg
http://afantasymachine.altervista.org/_altervista_ht/arisu_picipici_01.jpg
http://afantasymachine.altervista.org/_altervista_ht/phantom_wp01_einzwei.jpg


La parte più spassosa della mia vita è quando gli altri cercano di spiegarmi i miei pensieri . . .


BBCode Testing


Typeface & Size



Link to comment
Share on other sites

  • 0

Ci ho dormito un po sopra e ho trovato la soluzione!

Allora per prima cosa ti crei uno sprite vuoto ma non con Sprite.new ma bensì con RPG::Sprite.new, poi te lo posizioni alle cordinate che vuoi tu.

Dentro l'update della scena ovviamente fai l'update anche dello sprite, e quando devi richiamare un animazione usi:

@sprite.animation($data_animations[ID_ANIMAZIONE], true)

Ecco un esempio applicato al menu:

 

#==============================================================================
# ** Scene_Menu
#------------------------------------------------------------------------------
#  This class performs menu screen processing.
#==============================================================================

class Scene_Menu
 #--------------------------------------------------------------------------
 # * Object Initialization
 #	 menu_index : command cursor's initial position
 #--------------------------------------------------------------------------
 def initialize(menu_index = 0)
@menu_index = menu_index
 end
 #--------------------------------------------------------------------------
 # * Main Processing
 #--------------------------------------------------------------------------
 def main
# Make command window
s1 = $data_system.words.item
s2 = $data_system.words.skill
s3 = $data_system.words.equip
s4 = "Status"
s5 = "Save"
s6 = "End Game"
@command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6])
@command_window.index = @menu_index
# If number of party members is 0
if $game_party.actors.size == 0
  # Disable items, skills, equipment, and status
  @command_window.disable_item(0)
  @command_window.disable_item(1)
  @command_window.disable_item(2)
  @command_window.disable_item(3)
end
# Crea uno sprite sul quale verrà visualizzata l'animazione
@sprite = RPG::Sprite.new
@sprite.x = 320
@sprite.y = 240
# If save is forbidden
if $game_system.save_disabled
  # Disable save
  @command_window.disable_item(4)
end
# Make play time window
@playtime_window = Window_PlayTime.new
@playtime_window.x = 0
@playtime_window.y = 224
# Make steps window
@steps_window = Window_Steps.new
@steps_window.x = 0
@steps_window.y = 320
# Make gold window
@gold_window = Window_Gold.new
@gold_window.x = 0
@gold_window.y = 416
# Make status window
@status_window = Window_MenuStatus.new
@status_window.x = 160
@status_window.y = 0
# Execute transition
Graphics.transition
# Main loop
loop do
  # Update game screen
  Graphics.update
  # Update input information
  Input.update
  # Frame update
  update
  # Abort loop if screen is changed
  if $scene != self
	break
  end
end
# Prepare for transition
Graphics.freeze
# Dispose of windows
@command_window.dispose
@playtime_window.dispose
@steps_window.dispose
@gold_window.dispose
@status_window.dispose
# Cancella lo sprite
@sprite.dispose
 end
 #--------------------------------------------------------------------------
 # * Frame Update
 #--------------------------------------------------------------------------
 def update
# Update windows
@command_window.update
@playtime_window.update
@steps_window.update
@gold_window.update
@status_window.update
# Aggiorna lo sprite
@sprite.update
# If command window is active: call update_command
if @command_window.active
  update_command
  return
end
# If status window is active: call update_status
if @status_window.active
  update_status
  return
end
 end
 #--------------------------------------------------------------------------
 # * Frame Update (when command window is active)
 #--------------------------------------------------------------------------
 def update_command
# If B button was pressed
if Input.trigger?(Input::B)
  # Play cancel SE
  $game_system.se_play($data_system.cancel_se)
  # Switch to map screen
  $scene = Scene_Map.new
  return
end
if Input.trigger?(Input::A)
  # Mostra l'animazione 1
  @sprite.animation($data_animations[1], true)
  return
end
# If C button was pressed
if Input.trigger?(Input::C)
  # If command other than save or end game, and party members = 0
  if $game_party.actors.size == 0 and @command_window.index < 4
	# Play buzzer SE
	$game_system.se_play($data_system.buzzer_se)
	return
  end
  # Branch by command window cursor position
  case @command_window.index
  when 0  # item
	# Play decision SE
	$game_system.se_play($data_system.decision_se)
	# Switch to item screen
	$scene = Scene_Item.new
  when 1  # skill
	# Play decision SE
	$game_system.se_play($data_system.decision_se)
	# Make status window active
	@command_window.active = false
	@status_window.active = true
	@status_window.index = 0
  when 2  # equipment
	# Play decision SE
	$game_system.se_play($data_system.decision_se)
	# Make status window active
	@command_window.active = false
	@status_window.active = true
	@status_window.index = 0
  when 3  # status
	# Play decision SE
	$game_system.se_play($data_system.decision_se)
	# Make status window active
	@command_window.active = false
	@status_window.active = true
	@status_window.index = 0
  when 4  # save
	# If saving is forbidden
	if $game_system.save_disabled
	  # Play buzzer SE
	  $game_system.se_play($data_system.buzzer_se)
	  return
	end
	# Play decision SE
	$game_system.se_play($data_system.decision_se)
	# Switch to save screen
	$scene = Scene_Save.new
  when 5  # end game
	# Play decision SE
	$game_system.se_play($data_system.decision_se)
	# Switch to end game screen
	$scene = Scene_End.new
  end
  return
end
 end
 #--------------------------------------------------------------------------
 # * Frame Update (when status window is active)
 #--------------------------------------------------------------------------
 def update_status
# If B button was pressed
if Input.trigger?(Input::B)
  # Play cancel SE
  $game_system.se_play($data_system.cancel_se)
  # Make command window active
  @command_window.active = true
  @status_window.active = false
  @status_window.index = -1
  return
end
# If C button was pressed
if Input.trigger?(Input::C)
  # Branch by command window cursor position
  case @command_window.index
  when 1  # skill
	# If this actor's action limit is 2 or more
	if $game_party.actors[@status_window.index].restriction >= 2
	  # Play buzzer SE
	  $game_system.se_play($data_system.buzzer_se)
	  return
	end
	# Play decision SE
	$game_system.se_play($data_system.decision_se)
	# Switch to skill screen
	$scene = Scene_Skill.new(@status_window.index)
  when 2  # equipment
	# Play decision SE
	$game_system.se_play($data_system.decision_se)
	# Switch to equipment screen
	$scene = Scene_Equip.new(@status_window.index)
  when 3  # status
	# Play decision SE
	$game_system.se_play($data_system.decision_se)
	# Switch to status screen
	$scene = Scene_Status.new(@status_window.index)
  end
  return
end
 end
end

 

Premendo Shift si vede l'animazione 1 al centro dello schermo.

Edited by Sleeping Leonhart
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...