-
Posts
103 -
Joined
-
Last visited
Content Type
Profiles
Forums
Calendar
Posts posted by boko93
-
-
Ehi, scusate, di nuovo io.. sentite, sul vecchio pc lo script mi andava benissimo, adesso invece se provo a cliccare sull'Npc mi dà "SyntaxError sull'operazione di script" non sul codice quindi.. qualcuno sa dirmi com'è possibile?
-
Grazie
, il secondo metodo a funzionato a meraviglia
-
Posso chiedere un favore?? Lo script presente in spoiler in prima pagina, è aggiornato con tutti i fix delle pagine successive, oppure è quello originale di partenza??
Non inserire lo script, scarica la DEMO e prendilo da lì, è molto più semplice e molto meglio perché così puoi farti un'idea di quello che userai
...Adesso passiamo a me, perché, ebbene sì, ho un altro problema
!! Abbiate pazienza, non dovrebbe essere difficile come cosa...Allora, vi mostro la riga 63 dello script "Aeon System":
BGM = {57 => "005-Boss01"}Questo, però, implica che solamente usando la tecnica #57 si attiverà il BGM. Io ho 5 eoni e vorrei che tutti avessero la stessa colonna sonora in battaglia, così prima me la sono aggiustata così:
BGM = {1, 2, 3, 4, 5=> "Digimon_Theme"}Ma, non so perché, mi dava errore, allora ho provato così:
BGM = {1=> "Digimon_Theme"} BGM = {2=> "Digimon_Theme"} BGM = {3=> "Digimon_Theme"} BGM = {4=> "Digimon_Theme"} BGM = {5=> "Digimon_Theme"}E l'errore non c'è più, però il BGM viene attivato solamente se evoco l'eone #1 o #5... perché? Qualcuno sa come aiutarmi, please?
So che non ve ne fregherà più niente a questo punto... ma sarete creditati nel mio gioco

-
Grazie
, graie ai tuoi suggerimenti ora il mio script è perfetto
.Ciao!!!
-
Perfavore!! So che ne siete capaci, perché siete molto più capaci di me col Pc e so che se riuscite a creare delle cose del genere non vi può riuscire tanto difficile dirmi quali righe devo cancellare per eliminare due funzioni!
Non voglio che facciate il lavoro al posto mio, solo che mi diciate cosa cancellare, perché io ho letto da cima a fondo lo script e non ho la minima idea di cosa fare. Vi prego: dimostratevi disponibili davanti ad un novellino che vi pone una domanda così elementare!
-
Scusate, volevo solo fare due domandine facili facili da novellino quale sono... Io ho scaricato l'ultimo script postato nel topic, quello di Syaeler (Perdonami se l'ho scritto male
) a pagina 2, mi pare. Mi va alla grande, ma vorrei apportare due modifiche:1) Vorrei che non si vedesse il nome dell'eroe sopra al chara, tanto c'è anche nella finestra sotto quindi è abbastanza inutile, poi è anche antiestetico contando che io uso nomi dalle 4 alle 10 lettere... quali stringhe devo cancellare?
2) Io vorrei che nel mio gioco il party fosse obbligatoriamente di 4 persone, quindi vorrei togliere anche la stringa che dice che premendo D puoi eliminare un personaggio, ma quale stringa è? (Da solo sono riuscito a cancellare il testo, avete presente quello in alto a destra che indicava "Premendo D si può rimuovere un personaggio", ma sarebbe meglio rimuovere proprio l'intera funzione...)
Aiutatemi perfavore!! Verrete creditati nel mio gioco insieme a Slyaer

-
Scusate, vorrei chiedere se fosse possibile fare una piccola (spero
) modifica allo script: praticamente, avete presente il menù dove puoi selezionare status, alleva, addestra? Mi chiedevo se si potesse aggiungere un'opzione nella quale puoi scegliere quali evocazioni portare con te, perchè io nel mio gioco vorrei metterne veramente tante, ma vorrei fosse possibile portarne con sè solo sei, un po' come nei pokèmon.. Si può fare?Se volete qualcosa in cambio basta chiedere..
-
Ma il problema è che io non riesco proprio ad estrarlo..
-
Ciao!! Spero che tu ti diverta!!
P.s. anch'io è un po' come se fossi nuovo, perchè anche se mi sono iscritto parecchio tempo fa ho iniziato da pochi giorni a frequentare assiduamente il forum
.. -
con rpm non posso aprirlo, perchè non mi lascia neanche estrarre la cartella.. mi dici come si fa l'altra cosa?? scusate la mia ignoranza ^_^"
-
Ciao a tutti.. scusate, avevo due domande sull'applicazione. Ho installato tutto oggi, e nel complesso va bene, solo ho due piccoli problemini:
1) Quando provo a importare grossi numeri di immagini tramite il Resource Menager l'applicazione si blocca e devo chiuderla, è normale?
2) Ho provato a scaricare un gioco che ho trovato sul forum, ma mi dava formato non supportato, ma è un problema del gioco o di linux? Se di linux: si può risolvere?
Grazie in anticipo!!
-
Grazie, riferirò
-
Ora (se volete aggiungere le barre che vedete nello screen) creiamo un'altra classe e chiamiamola BSBAR
#============================================================================== # ■ New_Battle #------------------------------------------------------------------------------ # Compiled By : Maki #============================================================================== # Original Scripts By : Fukuyama, and 桜雅 在土 #============================================================================== # ¥£¥ XRXS_BP 3. Ÿ—˜ŽžHP‰ñ•œ ver.1.01 ¥£¥ # by fukuyama, ÷‰ë Ý“y # Battle_End_Recovery # # 퓬Œã‚̉ñ•œˆ—ƒ‚ƒWƒ…[ƒ‹ # # Request: stay # Script: fukuyama # Test: ƒmƒRƒmŽq # # URL: [url="http://www4.big.or.jp/~fukuyama/rgss/Battle_End_Recovery.txt"]http://www4.big.or.jp/~fukuyama/rgss/Battle_End_Recovery.txt[/url] # module Battle_End_Recovery module Scene_Battle_Module # ‰ñ•œ—¦•Ï”‚ÌID @@recovery_rate_variable_id = nil # ‰ñ•œ—¦‚̎擾 def battle_end_recovery_rate if @@recovery_rate_variable_id.nil? @@recovery_rate_variable_id = $data_system.variables.index '퓬Œã‚̉ñ•œ—¦' if @@recovery_rate_variable_id.nil? @@recovery_rate_variable_id = false end end return 0 unless @@recovery_rate_variable_id return $game_variables[@@recovery_rate_variable_id] end # 퓬Œã‚̉ñ•œˆ— def battle_end_recovery # ‰ñ•œ—¦ recovery_rate = battle_end_recovery_rate # ‰ñ•œ—¦•Ï”‚ª‚OˆÈŠO‚©‚ƒAƒNƒ^[‚ª¶‘¶‚µ‚Ä‚¢‚éê‡A퓬Œã‚̉ñ•œˆ—‚ðs‚¤ if recovery_rate != 0 and not actor.dead? # ƒp[ƒeƒB‚̃AƒNƒ^[–ˆ‚Ƀ‹[ƒv $game_party.actors.each do |actor| # ‰ñ•œ—ÊŒvŽZ recovery_hp = (actor.maxhp / 100.0 * recovery_rate).truncate recovery_sp = (actor.maxsp / 100.0 * recovery_rate).truncate # ŽÀۂɉñ•œ actor.hp += recovery_hp actor.sp += recovery_sp # ƒAƒjƒ[ƒVƒ‡ƒ“Ý’è actor.damage = - recovery_hp actor.damage_pop = true end # ƒXƒe[ƒ^ƒXƒEƒBƒ“ƒhƒE‚ðXV @status_window.refresh end end end # module Scene_Battle_Module end # module Battle_End_Recovery #------------------------------ # 퓬ƒV[ƒ“‚ÌÄ’è‹` #------------------------------ class Scene_Battle # Scene_Battle—pƒ‚ƒWƒ…[ƒ‹‚ðƒCƒ“ƒNƒ‹[ƒh include Battle_End_Recovery::Scene_Battle_Module # Œ³‚̃tƒF[ƒY‚TŠJŽn‚ɕʖ¼‚ð‚‚¯‚é alias battle_end_recovery_original_start_phase5 start_phase5 # ƒtƒF[ƒY‚TŠJŽn‚ðÄ’è‹` def start_phase5 # 퓬Œã‚̉ñ•œˆ—‚ðŒÄ‚Ño‚· battle_end_recovery # Œ³‚̃tƒF[ƒY‚TŠJŽn‚ðŒÄ‚Ño‚· battle_end_recovery_original_start_phase5 end end # Battle_End_Recovery # ¥£¥ XRXS_BP10. LEVEL UP!ƒEƒBƒ“ƒhƒE ¥£¥ # by ÷‰ë Ý“y $data_system_level_up_se = "" # ƒŒƒxƒ‹ƒAƒbƒvSEB""‚Å–³‚µB $data_system_level_up_me = "Audio/ME/007-Fanfare01" # ƒŒƒxƒ‹ƒAƒbƒvME #============================================================================== # ¡ Window_LevelUpWindow #------------------------------------------------------------------------------ # @ƒoƒgƒ‹I—¹ŽžAƒŒƒxƒ‹ƒAƒbƒv‚µ‚½ê‡‚ɃXƒe[ƒ^ƒX‚ð•\ަ‚·‚éƒEƒBƒ“ƒhƒE‚Å‚·B #============================================================================== class Window_LevelUpWindow < Window_Base #-------------------------------------------------------------------------- # œ ƒIƒuƒWƒFƒNƒg‰Šú‰» #-------------------------------------------------------------------------- def initialize(actor, last_lv, up_hp, up_sp, up_str, up_dex, up_agi, up_int) super(0, 128, 160, 192) self.contents = Bitmap.new(width - 32, height - 32) self.visible = false refresh(actor, last_lv, up_hp, up_sp, up_str, up_dex, up_agi, up_int) end #-------------------------------------------------------------------------- # œ ƒŠƒtƒŒƒbƒVƒ… #-------------------------------------------------------------------------- def refresh(actor, last_lv, up_hp, up_sp, up_str, up_dex, up_agi, up_int) self.contents.clear self.contents.font.color = system_color self.contents.font.name = "Arial" self.contents.font.size = 14 self.contents.draw_text( 0, 0, 160, 24, "LEVEL UP!!") self.contents.font.size = 18 self.contents.draw_text( 0, 28, 160, 24, $data_system.words.hp) self.contents.draw_text( 0, 50, 160, 24, $data_system.words.sp) self.contents.font.size = 14 self.contents.draw_text( 0, 72, 80, 24, $data_system.words.str) self.contents.draw_text( 0, 94, 80, 24, $data_system.words.dex) self.contents.draw_text( 0, 116, 80, 24, $data_system.words.agi) self.contents.draw_text( 0, 138, 80, 24, $data_system.words.int) self.contents.draw_text(92, 0, 128, 24, "¨") self.contents.draw_text(76, 28, 128, 24, "=") self.contents.draw_text(76, 50, 128, 24, "=") self.contents.draw_text(76, 72, 128, 24, "=") self.contents.draw_text(76, 94, 128, 24, "=") self.contents.draw_text(76, 116, 128, 24, "=") self.contents.draw_text(76, 138, 128, 24, "=") self.contents.font.color = normal_color self.contents.draw_text( 0, 0, 88, 24, last_lv.to_s, 2) self.contents.draw_text( 0, 28, 72, 24, "+" + up_hp.to_s, 2) self.contents.draw_text( 0, 50, 72, 24, "+" + up_sp.to_s, 2) self.contents.draw_text( 0, 72, 72, 24, "+" + up_str.to_s, 2) self.contents.draw_text( 0, 94, 72, 24, "+" + up_dex.to_s, 2) self.contents.draw_text( 0, 116, 72, 24, "+" + up_agi.to_s, 2) self.contents.draw_text( 0, 138, 72, 24, "+" + up_int.to_s, 2) self.contents.font.size = 20 self.contents.draw_text( 0, 0, 128, 24, actor.level.to_s, 2) self.contents.draw_text( 0, 26, 128, 24, actor.maxhp.to_s, 2) self.contents.draw_text( 0, 48, 128, 24, actor.maxsp.to_s, 2) self.contents.draw_text( 0, 70, 128, 24, actor.str.to_s, 2) self.contents.draw_text( 0, 92, 128, 24, actor.dex.to_s, 2) self.contents.draw_text( 0, 114, 128, 24, actor.agi.to_s, 2) self.contents.draw_text( 0, 136, 128, 24, actor.int.to_s, 2) end end #============================================================================== # ¡ Window_BattleStatus #============================================================================== class Window_BattleStatus < Window_Base #-------------------------------------------------------------------------- # œ ’ljÁEŒöŠJƒCƒ“ƒXƒ^ƒ“ƒX•Ï” #-------------------------------------------------------------------------- attr_accessor :level_up_flags # LEVEL UP!•\ަ end #============================================================================== # ¡ Game_Battler #============================================================================== class Game_Battler #-------------------------------------------------------------------------- # œ ’ljÁEŒöŠJƒCƒ“ƒXƒ^ƒ“ƒX•Ï” #-------------------------------------------------------------------------- attr_accessor :exp_gain_ban # EXPŽæ“¾ˆêŽž‹ÖŽ~ #-------------------------------------------------------------------------- # œ ƒIƒuƒWƒFƒNƒg‰Šú‰» #-------------------------------------------------------------------------- alias xrxs_bp10_initialize initialize def initialize @exp_gain_ban = false xrxs_bp10_initialize end #-------------------------------------------------------------------------- # œ ƒXƒe[ƒg [EXP ‚ðŠl“¾‚Å‚«‚È‚¢] ”»’è #-------------------------------------------------------------------------- alias xrxs_bp10_cant_get_exp? cant_get_exp? def cant_get_exp? if @exp_gain_ban == true return true else return xrxs_bp10_cant_get_exp? end end end #============================================================================== # ¡ Scene_Battle #============================================================================== class Scene_Battle #-------------------------------------------------------------------------- # œ ƒAƒtƒ^[ƒoƒgƒ‹ƒtƒF[ƒYŠJŽn #-------------------------------------------------------------------------- alias xrxs_bp10_start_phase5 start_phase5 def start_phase5 # EXP Šl“¾‹ÖŽ~ for i in 0...$game_party.actors.size $game_party.actors[i].exp_gain_ban = true end xrxs_bp10_start_phase5 # EXP Šl“¾‹ÖŽ~‚̉ðœ for i in 0...$game_party.actors.size $game_party.actors[i].exp_gain_ban = false end # EXP‚ð‰Šú‰» @exp_gained = 0 for enemy in $game_troop.enemies # Šl“¾ EXP‚ð’ljÁ # ƒGƒlƒ~[‚ª‰B‚êó‘ԂłȂ¢ê‡ @exp_gained += enemy.exp if not enemy.hidden end # Ý’è @phase5_step = 0 @exp_gain_actor = -1 # ƒŠƒUƒ‹ƒgƒEƒBƒ“ƒhƒE‚ð•\ަ @result_window.y -= 64 @result_window.visible = true # ƒŒƒxƒ‹ƒAƒbƒv”»’è‚Ö phase5_next_levelup end #-------------------------------------------------------------------------- # œ ƒtƒŒ[ƒ€XV (ƒAƒtƒ^[ƒoƒgƒ‹ƒtƒF[ƒY) #-------------------------------------------------------------------------- alias xrxs_bp10_update_phase5 update_phase5 def update_phase5 case @phase5_step when 1 update_phase5_step1 else xrxs_bp10_update_phase5 # ƒŒƒxƒ‹ƒAƒbƒv‚µ‚Ä‚¢‚éꇂ͋§ƒoƒgƒ‹I—¹ battle_end(0) if @levelup_window != nil and @phase5_wait_count <= 0 end end #-------------------------------------------------------------------------- # œ ƒtƒŒ[ƒ€XV (ƒAƒtƒ^[ƒoƒgƒ‹ƒtƒF[ƒY 1 : ƒŒƒxƒ‹ƒAƒbƒv) #-------------------------------------------------------------------------- def update_phase5_step1 # C ƒ{ƒ^ƒ“‚ª‰Ÿ‚³‚ê‚½ê‡ if Input.trigger?(Input::C) # ƒEƒBƒ“ƒhƒE‚ð•‚¶‚ÄŽŸ‚̃AƒNƒ^[‚Ö @levelup_window.visible = false if @levelup_window != nil @status_window.level_up_flags[@exp_gain_actor] = false phase5_next_levelup end end #-------------------------------------------------------------------------- # œ ŽŸ‚̃AƒNƒ^[‚̃Œƒxƒ‹ƒAƒbƒv•\ަ‚Ö #-------------------------------------------------------------------------- def phase5_next_levelup begin # ŽŸ‚̃AƒNƒ^[‚Ö @exp_gain_actor += 1 # ÅŒã‚̃AƒNƒ^[‚Ìê‡ if @exp_gain_actor >= $game_party.actors.size # ƒAƒtƒ^[ƒoƒgƒ‹ƒtƒF[ƒYŠJŽn @phase5_step = 0 return end actor = $game_party.actors[@exp_gain_actor] if actor.cant_get_exp? == false # Œ»Ý‚Ì”\—Í’l‚ð•ÛŽ last_level = actor.level last_maxhp = actor.maxhp last_maxsp = actor.maxsp last_str = actor.str last_dex = actor.dex last_agi = actor.agi last_int = actor.int # ŒoŒ±’lŽæ“¾‚ÌŒˆ’è“IuŠÔ(“ä actor.exp += @exp_gained # ”»’è if actor.level > last_level # ƒŒƒxƒ‹ƒAƒbƒv‚µ‚½ê‡ @status_window.level_up(@exp_gain_actor) if $data_system_level_up_se != "" Audio.se_stop Audio.se_play($data_system_level_up_se) end if $data_system_level_up_me != "" Audio.me_stop Audio.me_play($data_system_level_up_me) end @levelup_window = Window_LevelUpWindow.new(actor, last_level, actor.maxhp - last_maxhp, actor.maxsp - last_maxsp, actor.str - last_str, actor.dex - last_dex, actor.agi - last_agi, actor.int - last_int) @levelup_window.x = 160 * @exp_gain_actor @levelup_window.visible = true @phase5_wait_count = 40 @phase5_step = 1 # ƒXƒe[ƒ^ƒXƒEƒBƒ“ƒhƒE‚ðƒŠƒtƒŒƒbƒVƒ… @status_window.refresh return end end end until false end end # ¥£¥ XRXS_17. ƒXƒŠƒbƒvƒ_ƒ[ƒW–hŒä^Œø‰Ê—ÊÚ׉» ver.1.51 ¥£¥ # by ÷‰ë Ý“y, fukuyama #============================================================================== # ¡ Game_Battler #============================================================================== class Game_Battler #-------------------------------------------------------------------------- # œ ƒXƒŠƒbƒvƒ_ƒ[ƒW‚ÌŒø‰Ê“K—p #-------------------------------------------------------------------------- alias xrxs_bp7_slip_damage_effect slip_damage_effect def slip_damage_effect # ”’l‚̉Šú‰» slip_damage_percent = 0 slip_damage_plus = 0 # Œ»Ý•t‰Á‚³‚ê‚Ä‚¢‚éƒXƒe[ƒg‚Ì’†‚©‚çƒXƒŠƒbƒvƒ_ƒ[ƒW—L‚è‚̃‚ƒm‚ð’T‚· for i in @states if $data_states[i].slip_damage # ‚»‚̃Xƒe[ƒg‚ªŽ‚Á‚Ä‚¢‚éƒXƒŠƒbƒvƒ_ƒ[ƒW‚Ì # Lvƒvƒ‰ƒXƒXƒe[ƒg‚Ü‚½‚ÍLvƒ}ƒCƒiƒXƒXƒe[ƒg‚ð”»’èB for j in $data_states[i].plus_state_set if $data_states[j] != nil if $data_states[j].name =~ /^ƒXƒŠƒbƒv([0-9]+)(%|“)/ slip_damage_percent += $1.to_i elsif $data_states[j].name =~ /^ƒXƒŠƒbƒv([0-9]+)$/ slip_damage_plus += $1.to_i end end end for j in $data_states[i].minus_state_set if $data_states[j] != nil if $data_states[j].name =~ /^ƒXƒŠƒbƒv([0-9]+)(%|“)/ slip_damage_percent -= $1.to_i elsif $data_states[j].name =~ /^ƒXƒŠƒbƒv([0-9]+)$/ slip_damage_plus -= $1.to_i end end end end end if slip_damage_percent == 0 and slip_damage_plus == 0 xrxs_bp7_slip_damage_effect else # –h‹ï‚ªƒXƒŠƒbƒv–hŒä‚ª‚ ‚éꇂ𔻒è for i in [@armor1_id, @armor2_id, @armor3_id, @armor4_id] armor = $data_armors[i] next if armor == nil for j in armor.guard_state_set if $data_states[j] != nil if $data_states[j].name =~ /^ƒXƒŠƒbƒv([0-9]+)(%|“)/ if slip_damage_percent > 0 slip_damage_percent = [slip_damage_percent - $1.to_i, 0].max end end if $data_states[j].name =~ /^ƒXƒŠƒbƒv([0-9]+)$/ if slip_damage_percent > 0 slip_damage_plus = [slip_damage_plus - $1.to_i, 0].max end end end end end # ƒ_ƒ[ƒW‚ðÝ’è self.damage = self.maxhp * slip_damage_percent / 100 + slip_damage_plus # •ªŽU if self.damage.abs > 0 amp = [self.damage.abs * 15 / 100, 1].max self.damage += rand(amp+1) + rand(amp+1) - amp end # HP ‚©‚çƒ_ƒ[ƒW‚ðŒ¸ŽZ self.hp -= self.damage # ƒƒ\ƒbƒhI—¹ return true end end end # ¥£¥ XRXS_BP 1. CP§“±“ü ver.15 ¥£¥ # by ÷‰ë Ý“y, ˜aŠó, Jack-R #============================================================================== # ¡ Scene_Battle_CP #============================================================================== class Scene_Battle_CP #-------------------------------------------------------------------------- # œ ŒöŠJƒCƒ“ƒXƒ^ƒ“ƒX•Ï” #-------------------------------------------------------------------------- attr_accessor :stop # CP‰ÁŽZƒXƒgƒbƒv #---------------------------------------------------------------------------- # œ ƒIƒuƒWƒFƒNƒg‚̉Šú‰» #---------------------------------------------------------------------------- def initialize @battlers = [] @cancel = false @agi_total = 0 # ”z—ñ @count_battlers ‚ð‰Šú‰» @count_battlers = [] # ƒGƒlƒ~[‚ð”z—ñ @count_battlers ‚ɒljÁ for enemy in $game_troop.enemies @count_battlers.push(enemy) end # ƒAƒNƒ^[‚ð”z—ñ @count_battlers ‚ɒljÁ for actor in $game_party.actors @count_battlers.push(actor) end for battler in @count_battlers @agi_total += battler.agi end for battler in @count_battlers battler.cp = [[65535 * (rand(15) + 85) / 100 * battler.agi / @agi_total * 4, 0].max, 65535].min end end #---------------------------------------------------------------------------- # œ CPƒJƒEƒ“ƒg‚ÌŠJŽn #---------------------------------------------------------------------------- def start if @cp_thread != nil then return end @cancel = false @stop = false # ‚±‚±‚©‚çƒXƒŒƒbƒh @cp_thread = Thread.new do while @cancel != true if @stop != true self.update # XV sleep(0.05) end end end # ‚±‚±‚܂ŃXƒŒƒbƒh end #---------------------------------------------------------------------------- # œ CPƒJƒEƒ“ƒgƒAƒbƒv #---------------------------------------------------------------------------- def update if @count_battlers != nil then for battler in @count_battlers # s“®o—ˆ‚È‚¯‚ê‚Ζ³Ž‹ if battler.dead? == true #or battler.movable? == false then battler.cp = 0 next end # ‚±‚±‚Ì 1.3‚ð•Ï‚¦‚邱‚ƂūƒXƒs[ƒh‚ð•ÏX‰Â”\B‚½‚¾‚µ¬”“_‚ÍŽg—p‚·‚邱‚ÆB battler.cp = [[battler.cp + 1.3 * 4096 * battler.agi / @agi_total, 0].max, 65535].min end end end #---------------------------------------------------------------------------- # œ CPƒJƒEƒ“ƒg‚ÌŠJŽn #---------------------------------------------------------------------------- def stop @cancel = true if @cp_thread != nil then @cp_thread.join @cp_thread = nil end end end #============================================================================== # ¡ Game_Battler #============================================================================== class Game_Battler attr_accessor :now_guarding # Œ»Ý–hŒä’†ƒtƒ‰ƒO attr_accessor :cp # Œ»ÝCP attr_accessor :slip_state_update_ban # ƒXƒŠƒbƒvEƒXƒe[ƒgŽ©“®ˆ—‚̋֎~ #-------------------------------------------------------------------------- # œ ƒRƒ}ƒ“ƒh“ü—͉”\”»’è #-------------------------------------------------------------------------- def inputable? return (not @hidden and restriction <= 1 and @cp >=65535) end #-------------------------------------------------------------------------- # œ ƒXƒe[ƒg [ƒXƒŠƒbƒvƒ_ƒ[ƒW] ”»’è #-------------------------------------------------------------------------- alias xrxs_bp1_slip_damage? slip_damage? def slip_damage? return false if @slip_state_update_ban return xrxs_bp1_slip_damage? end #-------------------------------------------------------------------------- # œ ƒXƒe[ƒgŽ©‘R‰ðœ (ƒ^[ƒ“‚²‚ƂɌĂÑo‚µ) #-------------------------------------------------------------------------- alias xrxs_bp1_remove_states_auto remove_states_auto def remove_states_auto return if @slip_state_update_ban xrxs_bp1_remove_states_auto end end #============================================================================== # ¡ Game_Actor #============================================================================== class Game_Actor < Game_Battler #-------------------------------------------------------------------------- # œ ƒZƒbƒgƒAƒbƒv #-------------------------------------------------------------------------- alias xrxs_bp1_setup setup def setup(actor_id) xrxs_bp1_setup(actor_id) @hate = 100 # init-value is 100 @cp = 0 @now_guarding = false @slip_state_update_ban = false end end #============================================================================== # ¡ Game_Enemy #============================================================================== class Game_Enemy < Game_Battler #-------------------------------------------------------------------------- # œ ƒIƒuƒWƒFƒNƒg‰Šú‰» #-------------------------------------------------------------------------- alias xrxs_bp1_initialize initialize def initialize(troop_id, member_index) xrxs_bp1_initialize(troop_id, member_index) @hate = 100 # init-value is 100 @cp = 0 @now_guarding = false @slip_state_update_ban = false end end #============================================================================== # ¡ Window_BattleStatus #============================================================================== class Window_BattleStatus < Window_Base #-------------------------------------------------------------------------- # œ ŒöŠJƒCƒ“ƒXƒ^ƒ“ƒX•Ï” #-------------------------------------------------------------------------- attr_accessor :update_cp_only # CPƒ[ƒ^[‚݂̂ÌXV #-------------------------------------------------------------------------- # œ ƒIƒuƒWƒFƒNƒg‰Šú‰» #-------------------------------------------------------------------------- alias xrxs_bp1_initialize initialize def initialize @update_cp_only = false xrxs_bp1_initialize end #-------------------------------------------------------------------------- # œ ƒŠƒtƒŒƒbƒVƒ… #-------------------------------------------------------------------------- alias xrxs_bp1_refresh refresh def refresh if @update_cp_only == false xrxs_bp1_refresh end for i in 0...$game_party.actors.size actor = $game_party.actors[i] actor_x = i * 160 + 4 draw_actor_cp_meter(actor, actor_x, 96, 120, 0) end end #-------------------------------------------------------------------------- # œ CPƒ[ƒ^[ ‚Ì•`‰æ #-------------------------------------------------------------------------- def draw_actor_cp_meter(actor, x, y, width = 156, type = 0) self.contents.font.color = system_color self.contents.fill_rect(x-1, y+27, width+2,6, Color.new(0, 0, 0, 255)) if actor.cp == nil actor.cp = 0 end w = width * [actor.cp,65535].min / 65535 self.contents.fill_rect(x, y+28, w,1, Color.new(255, 255, 128, 255)) self.contents.fill_rect(x, y+29, w,1, Color.new(255, 255, 0, 255)) self.contents.fill_rect(x, y+30, w,1, Color.new(192, 192, 0, 255)) self.contents.fill_rect(x, y+31, w,1, Color.new(128, 128, 0, 255)) end end #============================================================================== # ¡ Scene_Battle #============================================================================== class Scene_Battle # ‚±‚±‚ÉŒø‰Ê‰¹‚ðÝ’è‚·‚邯AƒAƒNƒ^[ƒRƒ}ƒ“ƒh‚ªƒ|ƒbƒv‚µ‚½‚Æ‚«‚ÉŒø‰Ê‰¹‚ðĶ $data_system_command_up_se = "" #-------------------------------------------------------------------------- # œ ƒoƒgƒ‹I—¹ # result : Œ‹‰Ê (0:Ÿ—˜ 1:”s–k 2:“¦‘–) #-------------------------------------------------------------------------- alias xrxs_bp1_battle_end battle_end def battle_end(result) # CPƒJƒEƒ“ƒg’âŽ~ @cp_thread.stop xrxs_bp1_battle_end(result) end #-------------------------------------------------------------------------- # œ ƒvƒŒƒoƒgƒ‹ƒtƒF[ƒYŠJŽn #-------------------------------------------------------------------------- alias xrxs_bp1_start_phase1 start_phase1 def start_phase1 @agi_total = 0 @cp_thread = Scene_Battle_CP.new # ƒAƒNƒ^[ƒRƒ}ƒ“ƒhƒEƒBƒ“ƒhƒE‚ðÄì¬ s1 = $data_system.words.attack s2 = $data_system.words.skill s3 = $data_system.words.guard s4 = $data_system.words.item @actor_command_window = Window_Command.new(160, [s1, s2, s3, s4, "Run"]) @actor_command_window.y = 128 @actor_command_window.back_opacity = 160 @actor_command_window.active = false @actor_command_window.visible = false @actor_command_window.draw_item(4, $game_temp.battle_can_escape ? @actor_command_window.normal_color : @actor_command_window.disabled_color) xrxs_bp1_start_phase1 end #-------------------------------------------------------------------------- # œ ƒp[ƒeƒBƒRƒ}ƒ“ƒhƒtƒF[ƒYŠJŽn #-------------------------------------------------------------------------- alias xrxs_bp1_start_phase2 start_phase2 def start_phase2 xrxs_bp1_start_phase2 @party_command_window.active = false @party_command_window.visible = false # ŽŸ‚Ö start_phase3 end #-------------------------------------------------------------------------- # œ ƒtƒŒ[ƒ€XV (ƒp[ƒeƒBƒRƒ}ƒ“ƒhƒtƒF[ƒY) #-------------------------------------------------------------------------- alias xrxs_bp1_update_phase2 update_phase2 def update_phase2 # C ƒ{ƒ^ƒ“‚ª‰Ÿ‚³‚ê‚½ê‡ if Input.trigger?(Input::C) # ƒp[ƒeƒBƒRƒ}ƒ“ƒhƒEƒBƒ“ƒhƒE‚̃J[ƒ\ƒ‹ˆÊ’u‚Å•ªŠò case @party_command_window.index when 0 # 키 # Œˆ’è SE ‚ð‰‰‘t $game_system.se_play($data_system.decision_se) @cp_thread.start # ƒAƒNƒ^[ƒRƒ}ƒ“ƒhƒtƒF[ƒYŠJŽn start_phase3 end return end xrxs_bp1_update_phase2 end #-------------------------------------------------------------------------- # œ ŽŸ‚̃AƒNƒ^[‚̃Rƒ}ƒ“ƒh“ü—Í‚Ö #-------------------------------------------------------------------------- def phase3_next_actor # ƒ‹[ƒv begin # ƒAƒNƒ^[‚Ì–¾–ŃGƒtƒFƒNƒg OFF if @active_battler != nil @active_battler.blink = false end # ÅŒã‚̃AƒNƒ^[‚Ìê‡ if @actor_index == $game_party.actors.size-1 # ƒƒCƒ“ƒtƒF[ƒYŠJŽn @cp_thread.start start_phase4 return end # ƒAƒNƒ^[‚̃Cƒ“ƒfƒbƒNƒX‚ði‚ß‚é @actor_index += 1 @active_battler = $game_party.actors[@actor_index] @active_battler.blink = true if @active_battler.inputable? == false @active_battler.current_action.kind = -1 end # ƒAƒNƒ^[‚ªƒRƒ}ƒ“ƒh“ü—Í‚ðŽó‚¯•t‚¯‚È‚¢ó‘Ô‚È‚ç‚à‚¤ˆê“x end until @active_battler.inputable? @cp_thread.stop # ƒAƒNƒ^[ƒRƒ}ƒ“ƒhƒEƒBƒ“ƒhƒE‚ðƒZƒbƒgƒAƒbƒv @active_battler.now_guarding = false phase3_setup_command_window end #-------------------------------------------------------------------------- # œ ‘O‚̃AƒNƒ^[‚̃Rƒ}ƒ“ƒh“ü—Í‚Ö #-------------------------------------------------------------------------- def phase3_prior_actor # ƒ‹[ƒv begin # ƒAƒNƒ^[‚Ì–¾–ŃGƒtƒFƒNƒg OFF if @active_battler != nil @active_battler.blink = false end # ʼn‚̃AƒNƒ^[‚Ìê‡ if @actor_index == 0 # ʼn‚Ö–ß‚é start_phase3 return end # ƒAƒNƒ^[‚̃Cƒ“ƒfƒbƒNƒX‚ð–ß‚· @actor_index -= 1 @active_battler = $game_party.actors[@actor_index] @active_battler.blink = true # ƒAƒNƒ^[‚ªƒRƒ}ƒ“ƒh“ü—Í‚ðŽó‚¯•t‚¯‚È‚¢ó‘Ô‚È‚ç‚à‚¤ˆê“x end until @active_battler.inputable? @cp_thread.stop # ƒAƒNƒ^[ƒRƒ}ƒ“ƒhƒEƒBƒ“ƒhƒE‚ðƒZƒbƒgƒAƒbƒv @active_battler.now_guarding = false phase3_setup_command_window end #-------------------------------------------------------------------------- # œ ƒAƒNƒ^[ƒRƒ}ƒ“ƒhƒEƒBƒ“ƒhƒE‚̃ZƒbƒgƒAƒbƒv #-------------------------------------------------------------------------- alias xrxs_bp1_phase3_setup_command_window phase3_setup_command_window def phase3_setup_command_window # Œø‰Ê‰¹‚ÌĶ Audio.se_play($data_system_command_up_se) if $data_system_command_up_se != "" # –ß‚· xrxs_bp1_phase3_setup_command_window end #-------------------------------------------------------------------------- # œ ƒtƒŒ[ƒ€XV (ƒAƒNƒ^[ƒRƒ}ƒ“ƒhƒtƒF[ƒY : Šî–{ƒRƒ}ƒ“ƒh) #-------------------------------------------------------------------------- alias xrxs_bsp1_update_phase3_basic_command update_phase3_basic_command def update_phase3_basic_command # C ƒ{ƒ^ƒ“‚ª‰Ÿ‚³‚ê‚½ê‡ if Input.trigger?(Input::C) # ƒAƒNƒ^[ƒRƒ}ƒ“ƒhƒEƒBƒ“ƒhƒE‚̃J[ƒ\ƒ‹ˆÊ’u‚Å•ªŠò case @actor_command_window.index when 4 # “¦‚°‚é if $game_temp.battle_can_escape # Œˆ’è SE ‚ð‰‰‘t $game_system.se_play($data_system.decision_se) # ƒAƒNƒVƒ‡ƒ“‚ðÝ’è @active_battler.current_action.kind = 0 @active_battler.current_action.basic = 4 # ŽŸ‚̃AƒNƒ^[‚̃Rƒ}ƒ“ƒh“ü—Í‚Ö phase3_next_actor else # ƒuƒU[ SE ‚ð‰‰‘t $game_system.se_play($data_system.buzzer_se) end return end end xrxs_bsp1_update_phase3_basic_command end #-------------------------------------------------------------------------- # œ ƒƒCƒ“ƒtƒF[ƒYŠJŽn #-------------------------------------------------------------------------- alias xrxs_bp1_start_phase4 start_phase4 def start_phase4 xrxs_bp1_start_phase4 # ƒGƒlƒ~[ƒAƒNƒVƒ‡ƒ“ì¬ for enemy in $game_troop.enemies if enemy.cp < 65535 enemy.current_action.clear enemy.current_action.kind = -1 # ƒ^[ƒ“”ò‚΂µB next end enemy.make_action end # s“®‡˜ì¬ make_action_orders end #-------------------------------------------------------------------------- # œ ƒtƒŒ[ƒ€XV (ƒƒCƒ“ƒtƒF[ƒY ƒXƒeƒbƒv 1 : ƒAƒNƒVƒ‡ƒ“€”õ) #-------------------------------------------------------------------------- alias xrxs_bp1_update_phase4_step1 update_phase4_step1 def update_phase4_step1 # ‰Šú‰» @phase4_act_continuation = 0 # Ÿ”s”»’è if judge @cp_thread.stop # Ÿ—˜‚Ü‚½‚Í”s–k‚Ìê‡ : ƒƒ\ƒbƒhI—¹ return end # –¢s“®ƒoƒgƒ‰[”z—ñ‚Ìæ“ª‚©‚çŽæ“¾ @active_battler = @action_battlers[0] # ƒXƒe[ƒ^ƒXXV‚ðCP‚¾‚¯‚ÉŒÀ’èB @status_window.update_cp_only = true # ƒXƒe[ƒgXV‚ð‹ÖŽ~B @active_battler.slip_state_update_ban = true if @active_battler != nil # –ß‚· xrxs_bp1_update_phase4_step1 # ‹ÖŽ~‚ð‰ðœ @status_window.update_cp_only = false @active_battler.slip_state_update_ban = false if @active_battler != nil end #-------------------------------------------------------------------------- # œ ƒtƒŒ[ƒ€XV (ƒƒCƒ“ƒtƒF[ƒY ƒXƒeƒbƒv 2 : ƒAƒNƒVƒ‡ƒ“ŠJŽn) #-------------------------------------------------------------------------- alias xrxs_bp1_update_phase4_step2 update_phase4_step2 def update_phase4_step2 # ‹§ƒAƒNƒVƒ‡ƒ“‚łȂ¯‚ê‚Î unless @active_battler.current_action.forcing # CP‚ª‘«‚è‚Ä‚¢‚È‚¢ê‡ if @phase4_act_continuation == 0 and @active_battler.cp < 65535 @phase4_step = 6 return end # §–ñ‚ª [“G‚ð’ÊíUŒ‚‚·‚é] ‚© [–¡•û‚ð’ÊíUŒ‚‚·‚é] ‚Ìê‡ if @active_battler.restriction == 2 or @active_battler.restriction == 3 # ƒAƒNƒVƒ‡ƒ“‚ÉUŒ‚‚ðÝ’è @active_battler.current_action.kind = 0 @active_battler.current_action.basic = 0 end # §–ñ‚ª [s“®‚Å‚«‚È‚¢] ‚Ìê‡ if @active_battler.restriction == 4 # ƒAƒNƒVƒ‡ƒ“‹§‘Îۂ̃oƒgƒ‰[‚ðƒNƒŠƒA $game_temp.forcing_battler = nil if @phase4_act_continuation == 0 and @active_battler.cp >= 65535 # ƒXƒe[ƒgŽ©‘R‰ðœ @active_battler.remove_states_auto # CPÁ”ï @active_battler.cp = [(@active_battler.cp - 65535),0].max # ƒXƒe[ƒ^ƒXƒEƒBƒ“ƒhƒE‚ðƒŠƒtƒŒƒbƒVƒ… @status_window.refresh end # ƒXƒeƒbƒv 1 ‚ɈÚs @phase4_step = 1 return end end # ƒAƒNƒVƒ‡ƒ“‚ÌŽí•ʂŕªŠò case @active_battler.current_action.kind when 0 # UŒ‚¥–hŒäE“¦‚°‚éE‰½‚à‚µ‚È‚¢Žž‚Ì‹¤’ÊÁ”ïCP @active_battler.cp -= 0 if @phase4_act_continuation == 0 when 1 # ƒXƒLƒ‹Žg—pŽž‚ÌÁ”ïCP @active_battler.cp -= 65535 if @phase4_act_continuation == 0 when 2 # ƒAƒCƒeƒ€Žg—pŽž‚ÌÁ”ïCP @active_battler.cp -= 65535 if @phase4_act_continuation == 0 when -1 # CP‚ª—‚Ü‚Á‚Ä‚¢‚È‚¢ @phase4_step = 6 return end # CP‰ÁŽZ‚ðˆêŽž’âŽ~‚·‚é @cp_thread.stop = true # ƒXƒe[ƒgŽ©‘R‰ðœ @active_battler.remove_states_auto xrxs_bp1_update_phase4_step2 end #-------------------------------------------------------------------------- # œ Šî–{ƒAƒNƒVƒ‡ƒ“ Œ‹‰Êì¬ #-------------------------------------------------------------------------- alias xrxs_bp1_make_basic_action_result make_basic_action_result def make_basic_action_result # UŒ‚‚Ìê‡ if @active_battler.current_action.basic == 0 and @phase4_act_continuation == 0 @active_battler.cp -= 65535 # UŒ‚Žž‚ÌCPÁ”ï end # –hŒä‚Ìê‡ if @active_battler.current_action.basic == 1 and @phase4_act_continuation == 0 @active_battler.cp -= 32767 # –hŒäŽž‚ÌCPÁ”ï end # “G‚Ì“¦‚°‚é‚Ìê‡ if @active_battler.is_a?(Game_Enemy) and @active_battler.current_action.basic == 2 and @phase4_act_continuation == 0 @active_battler.cp -= 65535 # “¦‘–Žž‚ÌCPÁ”ï end # ‰½‚à‚µ‚È‚¢‚Ìê‡ if @active_battler.current_action.basic == 3 and @phase4_act_continuation == 0 @active_battler.cp -= 32767 # ‰½‚à‚µ‚È‚¢Žž‚ÌCPÁ”ï end # “¦‚°‚é‚Ìê‡ if @active_battler.current_action.basic == 4 and @phase4_act_continuation == 0 @active_battler.cp -= 65535 # “¦‘–Žž‚ÌCPÁ”ï # “¦‘–‰Â”\‚ł͂Ȃ¢ê‡ if $game_temp.battle_can_escape == false # ƒuƒU[ SE ‚ð‰‰‘t $game_system.se_play($data_system.buzzer_se) return end # Œˆ’è SE ‚ð‰‰‘t $game_system.se_play($data_system.decision_se) # “¦‘–ˆ— update_phase2_escape return end xrxs_bp1_make_basic_action_result end #-------------------------------------------------------------------------- # œ ƒtƒŒ[ƒ€XV (ƒƒCƒ“ƒtƒF[ƒY ƒXƒeƒbƒv 5 : ƒ_ƒ[ƒW•\ަ) #-------------------------------------------------------------------------- alias xrxs_bp1_update_phase4_step5 update_phase4_step5 def update_phase4_step5 # ƒXƒŠƒbƒvƒ_ƒ[ƒW if @active_battler.hp > 0 and @active_battler.slip_damage? @active_battler.slip_damage_effect @active_battler.damage_pop = true end xrxs_bp1_update_phase4_step5 end #-------------------------------------------------------------------------- # œ ƒtƒŒ[ƒ€XV (ƒƒCƒ“ƒtƒF[ƒY ƒXƒeƒbƒv 6 : ƒŠƒtƒŒƒbƒVƒ…) #-------------------------------------------------------------------------- alias xrxs_bp1_update_phase4_step6 update_phase4_step6 def update_phase4_step6 # CP‰ÁŽZ‚ðÄŠJ‚·‚é @cp_thread.stop = false # ƒwƒ‹ƒvƒEƒBƒ“ƒhƒE‚ð‰B‚· @help_window.visible = false xrxs_bp1_update_phase4_step6 end end # ¥£¥ XRXS_BP 7. ƒoƒgƒ‹ƒXƒe[ƒ^ƒXEƒNƒŠƒAƒfƒUƒCƒ“ ver.1.02 ¥£¥ # by ÷‰ë Ý“y, TOMY #============================================================================== # ¡ Window_BattleStatus #============================================================================== class Window_BattleStatus < Window_Base #-------------------------------------------------------------------------- # œ ŒöŠJƒCƒ“ƒXƒ^ƒ“ƒX•Ï” #-------------------------------------------------------------------------- attr_accessor :update_cp_only # CPƒ[ƒ^[‚݂̂ÌXV #-------------------------------------------------------------------------- # œ ƒIƒuƒWƒFƒNƒg‰Šú‰» #-------------------------------------------------------------------------- alias xrxs_bp7_initialize initialize def initialize xrxs_bp7_initialize # «Full-View‚Ìꇂ͉º“ñs‚Ì # ‚ðÁ‚µ‚Ä‚‚¾‚³‚¢B #self.opacity = 0 #self.back_opacity = 0 end #-------------------------------------------------------------------------- # œ ƒŠƒtƒŒƒbƒVƒ… #-------------------------------------------------------------------------- alias xrxs_bp7_refresh refresh def refresh if @update_cp_only xrxs_bp7_refresh return end # •`ŽÊ‚ð‹ÖŽ~‚µ‚È‚ª‚ç–ß‚· @draw_ban = true xrxs_bp7_refresh # •`ŽÊ‚̋֎~‚ð‰ðœ @draw_ban = false # •`ŽÊ‚ðŠJŽn @item_max = $game_party.actors.size for i in 0...$game_party.actors.size actor = $game_party.actors[i] actor_x = i * 160 + 21 # •àsƒLƒƒƒ‰ƒOƒ‰ƒtƒBƒbƒN‚Ì•`ŽÊ draw_actor_graphic(actor, actor_x - 9, 116) # HP/SPƒ[ƒ^[‚Ì•`ŽÊ draw_actor_hp_meter_line(actor, actor_x, 72, 96, 12) draw_actor_sp_meter_line(actor, actor_x, 104, 96, 12) # HP”’l‚Ì•`ŽÊ self.contents.font.size = 24 # HP/SP”’l‚Ì•¶Žš‚̑傫‚³ self.contents.font.color = actor.hp == 0 ? knockout_color : actor.hp <= actor.maxhp / 4 ? crisis_color : normal_color draw_shadow_text(actor_x-2, 58, 96, 24, actor.hp.to_s, 2) # SP”’l‚Ì•`ŽÊ self.contents.font.color = actor.sp == 0 ? knockout_color : actor.sp <= actor.maxsp / 4 ? crisis_color : normal_color draw_shadow_text(actor_x-2, 90, 96, 24, actor.sp.to_s, 2) # —pŒêuHPv‚Æ—pŒêuSPv‚Ì•`ŽÊ self.contents.font.size = 12 # —pŒêuHP/SPv‚Ì•¶Žš‚̑傫‚³ self.contents.font.color = system_color # —pŒêuHP/SPv‚Ì•¶Žš‚ÌF draw_shadow_text(actor_x, 60, 96, 12, $data_system.words.hp) draw_shadow_text(actor_x, 92, 96, 12, $data_system.words.sp) draw_actor_state(actor, actor_x, 100) end end end #============================================================================== # ¡ Window_Base #============================================================================== class Window_Base < Window #-------------------------------------------------------------------------- # œ HPƒ[ƒ^[ ‚Ì•`‰æ #-------------------------------------------------------------------------- def draw_actor_hp_meter_line(actor, x, y, width = 156, height = 4) w = width * actor.hp / actor.maxhp hp_color_1 = Color.new(255, 0, 0, 192) hp_color_2 = Color.new(255, 255, 0, 192) self.contents.fill_rect(x+8, y+4, width, (height/4).floor, Color.new(0, 0, 0, 128)) draw_line(x, y, x + w, y, hp_color_1, (height/4).floor, hp_color_2) x -= 1 y += (height/4).floor self.contents.fill_rect(x+8, y+4, width, (height/4).ceil , Color.new(0, 0, 0, 128)) draw_line(x, y, x + w, y, hp_color_1, (height/4).ceil , hp_color_2) x -= 1 y += (height/4).ceil self.contents.fill_rect(x+8, y+4, width, (height/4).ceil , Color.new(0, 0, 0, 128)) draw_line(x, y, x + w, y, hp_color_1, (height/4).ceil , hp_color_2) x -= 1 y += (height/4).ceil self.contents.fill_rect(x+8, y+4, width, (height/4).floor, Color.new(0, 0, 0, 128)) draw_line(x, y, x + w, y, hp_color_1, (height/4).floor, hp_color_2) end #-------------------------------------------------------------------------- # œ SPƒ[ƒ^[ ‚Ì•`‰æ #-------------------------------------------------------------------------- def draw_actor_sp_meter_line(actor, x, y, width = 156, height = 4) w = width * actor.sp / actor.maxsp hp_color_1 = Color.new( 0, 0, 255, 192) hp_color_2 = Color.new( 0, 255, 255, 192) self.contents.fill_rect(x+8, y+4, width, (height/4).floor, Color.new(0, 0, 0, 128)) draw_line(x, y, x + w, y, hp_color_1, (height/4).floor, hp_color_2) x -= 1 y += (height/4).floor self.contents.fill_rect(x+8, y+4, width, (height/4).ceil , Color.new(0, 0, 0, 128)) draw_line(x, y, x + w, y, hp_color_1, (height/4).ceil , hp_color_2) x -= 1 y += (height/4).ceil self.contents.fill_rect(x+8, y+4, width, (height/4).ceil , Color.new(0, 0, 0, 128)) draw_line(x, y, x + w, y, hp_color_1, (height/4).ceil , hp_color_2) x -= 1 y += (height/4).ceil self.contents.fill_rect(x+8, y+4, width, (height/4).floor, Color.new(0, 0, 0, 128)) draw_line(x, y, x + w, y, hp_color_1, (height/4).floor, hp_color_2) end #-------------------------------------------------------------------------- # œ –¼‘O‚Ì•`‰æ #-------------------------------------------------------------------------- alias xrxs_bp7_draw_actor_name draw_actor_name def draw_actor_name(actor, x, y) xrxs_bp7_draw_actor_name(actor, x, y) if @draw_ban != true end #-------------------------------------------------------------------------- # œ ƒXƒe[ƒg‚Ì•`‰æ #-------------------------------------------------------------------------- alias xrxs_bp7_draw_actor_state draw_actor_state def draw_actor_state(actor, x, y, width = 120) xrxs_bp7_draw_actor_state(actor, x, y, width) if @draw_ban != true end #-------------------------------------------------------------------------- # œ HP ‚Ì•`‰æ #-------------------------------------------------------------------------- alias xrxs_bp7_draw_actor_hp draw_actor_hp def draw_actor_hp(actor, x, y, width = 144) xrxs_bp7_draw_actor_hp(actor, x, y, width) if @draw_ban != true end #-------------------------------------------------------------------------- # œ SP ‚Ì•`‰æ #-------------------------------------------------------------------------- alias xrxs_bp7_draw_actor_sp draw_actor_sp def draw_actor_sp(actor, x, y, width = 144) xrxs_bp7_draw_actor_sp(actor, x, y, width) if @draw_ban != true end end #============================================================================== # ž ŠO•”ƒ‰ƒCƒuƒ‰ƒŠ #============================================================================== class Window_Base #-------------------------------------------------------------------------- # œ ƒ‰ƒCƒ“•`‰æ by ÷‰ë Ý“y #-------------------------------------------------------------------------- def draw_line(start_x, start_y, end_x, end_y, start_color, width = 1, end_color = start_color) # •`ŽÊ‹——£‚ÌŒvŽZB‘å‚«‚߂ɒ¼ŠpŽž‚Ì’·‚³B distance = (start_x - end_x).abs + (start_y - end_y).abs # •`ŽÊŠJŽn if end_color == start_color for i in 1..distance x = (start_x + 1.0 * (end_x - start_x) * i / distance).to_i y = (start_y + 1.0 * (end_y - start_y) * i / distance).to_i self.contents.fill_rect(x, y, width, width, start_color) end else for i in 1..distance x = (start_x + 1.0 * (end_x - start_x) * i / distance).to_i y = (start_y + 1.0 * (end_y - start_y) * i / distance).to_i r = start_color.red * (distance-i)/distance + end_color.red * i/distance g = start_color.green * (distance-i)/distance + end_color.green * i/distance b = start_color.blue * (distance-i)/distance + end_color.blue * i/distance a = start_color.alpha * (distance-i)/distance + end_color.alpha * i/distance self.contents.fill_rect(x, y, width, width, Color.new(r, g, b, a)) end end end #-------------------------------------------------------------------------- # œ ‰e•¶Žš•`‰æ by TOMY #-------------------------------------------------------------------------- def draw_shadow_text(x, y, width, height, string, align = 0) # Œ³‚ÌF‚ð•Û‘¶‚µ‚Ä‚¨‚ color = self.contents.font.color.dup # •Žš‚ʼne•`‰æ self.contents.font.color = Color.new(0, 0, 0) self.contents.draw_text(x + 2, y + 2, width, height, string, align) # Œ³‚ÌF‚É–ß‚µ‚Ä•`‰æ self.contents.font.color = color self.contents.draw_text(x, y, width, height, string, align) end end
Ora è davvero tutto. Ciao ciao!! -
Ciao a tutti :smile: , non so se ci siamo già incontrati dato che non frequento molto il forum. Comunque, un po' di giorni fa avevo chiesto un Bs sullo stile di Lufia con i personaggi messi di schiena, ma nessuno era riuscito a trovarlo
. Volevo dirvi che un mio amico di un altro forum è riuscito a modificare un minkoff per ottenere il risultato richiesto e mi sembrava giusto farvelo avere.
Se volete potete anche aggiungerlo alla lista, sappiate solo che non l'ho creato io
. E ora lo script:
Autore: Minkoff, modificato da tidus00 in modo che i characters dei personaggi siano messi di spalle
Funzione: penso di aver già detto tutto
Screen:
Codice:
Per prima cosa creiamo una nuova classe sopra main e la chiamiamo BSP2, e vi inseriamo questo codice:# http://rpg.para.s3p.net/ #------------------------------------------------------------------------------ # バトルフィールドに歩行グラフィックを表示します。 #============================================================================== module SDVA X_LINE = 150 # 横位置のバトラー表示座標 Y_LINE = 300 # 縦位置のバトラー表示座標 X_SPACE = 100 # 横位置のバトラー同士の間隔 Y_SPACE = 0 # 縦位置のバトラー同士の間隔 X_POSITION = 25 # 隊列[前衛・中衛・後衛]の横間隔 Y_POSITION = 0 # 隊列[前衛・中衛・後衛]の縦間隔 ATTACK_MOVE = true # 攻撃時に前へ踏み出すか( true / false ) SKILL_MOVE = true # スキル使用時に前へ踏み出すか( true / false ) ITEM_MOVE = false # アイテム使用時に前へ踏み出すか( true / false ) MOVE_STEP = 1 # 移動歩数 MOVE_PIXEL = 10 # 一歩あたりのピクセル数 PARTY_POS = 3 # キャラクターの向き( 0:下 / 1:左 / 2:右 / 3:上 ) WINDOWPOS_CHANGE = true # コマンドウインドウをバトラーの横に表示するか( true / false ) end #============================================================================== # ■ Game_Actor #============================================================================== class Game_Actor < Game_Battler #-------------------------------------------------------------------------- # ● バトル画面 X 座標の取得 #-------------------------------------------------------------------------- def screen_x if self.index != nil # 隊列を取得 pos = $data_classes[self.class_id].position x_pos = pos * SDVA::X_POSITION scr_x = self.index * SDVA::X_SPACE + SDVA::X_LINE + x_pos # 移動アクションのとき if self.current_action.move_action == true # 横に移動 scr_x += @shift_x end return scr_x else return 0 end end #-------------------------------------------------------------------------- # ● バトル画面 Y 座標の取得 #-------------------------------------------------------------------------- def screen_y if self.index != nil # 隊列を取得 pos = $data_classes[self.class_id].position y_pos = pos * SDVA::Y_POSITION scr_y = self.index * SDVA::Y_SPACE + SDVA::Y_LINE + y_pos # 移動アクションのとき if self.current_action.move_action == true # 縦に移動 scr_y += @shift_y end return scr_y else return 0 end end #-------------------------------------------------------------------------- # ● バトル画面 Z 座標の取得 #-------------------------------------------------------------------------- def screen_z if self.index != nil return self.index else return 0 end end end #============================================================================== # ■ Game_Battler (分割定義 1) #============================================================================== class Game_Battler #-------------------------------------------------------------------------- # ● 公開インスタンス変数 #-------------------------------------------------------------------------- attr_reader :pattern # 歩行パターン attr_reader :trans_x # X方向の移動距離 attr_reader :moving # 移動中フラグ #-------------------------------------------------------------------------- # ● オブジェクト初期化 #-------------------------------------------------------------------------- alias initialize_sdva initialize def initialize initialize_sdva move_reset end #-------------------------------------------------------------------------- # ○ 移動カウント #-------------------------------------------------------------------------- def move @moving = 1 if @step < SDVA::MOVE_STEP # 歩数を満たすまで移動 @pattern = (@pattern + 1) % 4 @step += 1 move_step else # 移動終了 @pattern = 1 @moving = 2 end end #-------------------------------------------------------------------------- # ○ 移動処理 #-------------------------------------------------------------------------- def move_step # パーティの向きによって移動座標を変える case SDVA::PARTY_POS when 0 @shift_y = @step * SDVA::MOVE_PIXEL when 1 @shift_x = -(@step * SDVA::MOVE_PIXEL) when 2 @shift_x = @step * SDVA::MOVE_PIXEL when 3 @shift_y = -(@step * SDVA::MOVE_PIXEL) end end #-------------------------------------------------------------------------- # ○ 移動のリセット #-------------------------------------------------------------------------- def move_reset @moving = 0 @pattern = 0 @step = 0 @shift_x = 0 @shift_y = 0 end end #============================================================================== # ■ Game_BattleAction #============================================================================== class Game_BattleAction #-------------------------------------------------------------------------- # ● 公開インスタンス変数 #-------------------------------------------------------------------------- attr_accessor :move_action # 移動するアクションか #-------------------------------------------------------------------------- # ● クリア #-------------------------------------------------------------------------- alias clear_sdva clear def clear clear_sdva @move_action = false end end #============================================================================== # ■ Sprite_Battler #============================================================================== class Sprite_Battler < RPG::Sprite #-------------------------------------------------------------------------- # ● フレーム更新 #-------------------------------------------------------------------------- alias update_sdva update def update super # バトラーがアクターに含まれるとき if @battler.is_a?(Game_Actor) # ファイル名か色相が現在のものと異なる場合 # 行動中の場合 if @battler.battler_name != @battler_name or @battler.battler_hue != @battler_hue or @battler.current_action.basic == 0 or @battler.current_action.kind != 3 # ビットマップを取得、設定 @character_name = @battler.character_name @character_hue = @battler.character_hue # 歩行グラフィックを描画 self.bitmap = RPG::Cache.character(@character_name, @character_hue) cw = self.bitmap.width / 4 ch = self.bitmap.height / 4 @width = cw @height = ch if @battler.current_action.move_action == true # 歩かせる @battler.move else @battler.move_reset end # 転送元の矩形を設定 sx = @battler.pattern * cw sy = SDVA::PARTY_POS * ch self.src_rect.set(sx, sy, cw, ch) self.ox = @width / 2 self.oy = @height # 隠れ状態なら不透明度を 0 にする if @battler.hidden self.opacity = 0 end end end update_sdva end end #============================================================================== # ■ Scene_Battle #============================================================================== class Scene_Battle #-------------------------------------------------------------------------- # ● アクターコマンドウィンドウのセットアップ #-------------------------------------------------------------------------- alias phase3_setup_command_window_sdva phase3_setup_command_window def phase3_setup_command_window phase3_setup_command_window_sdva if SDVA::WINDOWPOS_CHANGE # アクターコマンドウィンドウの位置を設定 case SDVA::PARTY_POS when 0 x_pos = @active_battler.screen_x - (@actor_command_window.width/2) y_pos = @active_battler.screen_y when 1 x_pos = @active_battler.screen_x - @actor_command_window.width - 16 y_pos = @active_battler.screen_y - @actor_command_window.height when 2 x_pos = @active_battler.screen_x + 16 y_pos = @active_battler.screen_y - @actor_command_window.height when 3 x_pos = @active_battler.screen_x - (@actor_command_window.width/2) y_pos = @active_battler.screen_y - @actor_command_window.height - 48 end @actor_command_window.x = x_pos >= 0 ? x_pos : 0 @actor_command_window.x = x_pos+@actor_command_window.width <= 640 ? x_pos : 640-@actor_command_window.width @actor_command_window.y = y_pos >= 0 ? y_pos : 0 @actor_command_window.y = y_pos+@actor_command_window.height <= 480 ? y_pos : 480-@actor_command_window.height # ステータスウインドウに隠れないように @actor_command_window.z = 9999 end end #-------------------------------------------------------------------------- # ● フレーム更新 (メインフェーズ ステップ 3 : 行動側アニメーション) #-------------------------------------------------------------------------- alias update_phase4_step3_sdva update_phase4_step3 def update_phase4_step3 if SDVA::ATTACK_MOVE if @active_battler.current_action.basic == 0 @active_battler.current_action.move_action = true end end if SDVA::SKILL_MOVE if @active_battler.current_action.kind == 1 @active_battler.current_action.move_action = true end end if SDVA::ITEM_MOVE if @active_battler.current_action.kind == 2 @active_battler.current_action.move_action = true end end # バトラーがアクターに含まれ、移動アクション中 if @active_battler.is_a?(Game_Actor) and @active_battler.current_action.move_action # 移動終了時 if @active_battler.moving == 2 update_phase4_step3_sdva end else if @active_battler.moving == 0 update_phase4_step3_sdva end end end #-------------------------------------------------------------------------- # ● フレーム更新 (メインフェーズ ステップ 6 : リフレッシュ) #-------------------------------------------------------------------------- alias update_phase4_step6_sdva update_phase4_step6 def update_phase4_step6 @active_battler.current_action.move_action = false @active_battler.move_reset update_phase4_step6_sdva end end #============================================================================== # ■ Spriteset_Battle #============================================================================== class Spriteset_Battle #-------------------------------------------------------------------------- # ● オブジェクト初期化 #-------------------------------------------------------------------------- alias initialize_sdva initialize def initialize initialize_sdva @viewport2.z = 1 end end #============================================================================== # ■ Arrow_Actor #============================================================================== class Arrow_Actor < Arrow_Base #-------------------------------------------------------------------------- # ● フレーム更新 #-------------------------------------------------------------------------- alias update_sdva update def update update_sdva # カーソル下 if Input.repeat?(Input::DOWN) $game_system.se_play($data_system.cursor_se) @index += 1 @index %= $game_party.actors.size end # カーソル上 if Input.repeat?(Input::UP) $game_system.se_play($data_system.cursor_se) @index += $game_party.actors.size - 1 @index %= $game_party.actors.size end end end #============================================================================== # ■ Arrow_Enemy #============================================================================== class Arrow_Enemy < Arrow_Base #-------------------------------------------------------------------------- # ● フレーム更新 #-------------------------------------------------------------------------- alias update_sdva update def update update_sdva # カーソル下 if Input.repeat?(Input::DOWN) $game_system.se_play($data_system.cursor_se) $game_troop.enemies.size.times do @index += 1 @index %= $game_troop.enemies.size break if self.enemy.exist? end end # カーソル上 if Input.repeat?(Input::UP) $game_system.se_play($data_system.cursor_se) $game_troop.enemies.size.times do @index += $game_troop.enemies.size - 1 @index %= $game_troop.enemies.size break if self.enemy.exist? end end end end
(Abbiate pazienza, ma devo farre un Doppio Post)
-
Se ho capito bene, non dovrebbe essere difficile neanche ad eventi. Basta creare una magia e chiamarla "Evoca ..." poi la colleghi a un evento comune che dice "Aggiungi ... al party", okay?
-
Carino veramente :Ok: . Sai cosa ci starebbe veramente bene? I Face dei personaggi sul menù. Ora volevo entrare nella torre, ma il computer mi ha dato errore perchè non trovava un Bgm
. Solo non capisco perchè tu lo abbia chiamato Final Fantasy III Ds, insomma io ho finito Final Fantasy III e quello non mi sembra c'entri molto, poi non hai usato il Me per la vittoria di una battaglia tipico dei Final Fantasy
-
cusatemi, un giorno avevo trovato un Bs dove i personaggi erano messi dischiena e venivano usati i characters, ma ora non lo trovo più. Ecco degli screens di Lufia e Final Fantasy Mystic Quest. Lo avete?
http://lufia.rpgplanet.gamespy.com/files/lufia2/screenshots/LUFIA2(1).png
http://www.consoleclassix.com/info_img/Final_Fantasy_Mystic_Quest_SNES_ScreenShot4.jpg
-
Io e Dark Sora vorremmo formare un nuovo team e vorremmo sapere se qualcuno ha voglio di entrare a farne parte. Avevamo già provato con il progetto Final Fantasy XIV, eravamo tanti ed eravamo a buon punto (gli eventisti avevano già iniziato Bs e Menù :( ) quando ad un certo punto gli utenti hanno smesso di farsi sentire. Adesso vogliamo formare un team di persone serie, che lavorino bene come una squadra
, quindi se sapete che prima o poi vi stancherete non offritevi.Chiunque stia realizzando da solo il proprio progetto e vuol entrare a far parte del team prenderemo lo aiuteremo a concluderlo insieme a tutti i suoi altri progetti, nel frattempo lui aiuterà noi. Quindi il team (come ogni team) potrà sviluppare più di un gioco per volta.
Membri:
boko93: tuttofare
Dark Sora: eventista
perulegend: tuttofare
>DT<: eventista e mapper
stiamo cercando scripter, grafici (informatici e non) e possibilmente musicisti (informatici, non dovete per forza saper suonare qualcosa :rovatfl: ).
Risposte?
-
Va bene, allora ti farò sapere
-
Il gioco è nato come Final Fantasy XIV, ma presto il titolo cambierà. Tu vorresti unirti al team?
-
Ciao a tutti, ragazzi , sono tornato (veramente non ero andato via, ma non avevo nulla da scrivere...). Sentite, ieri mi è venuta in mente un'idea per Final Fantasy XIV e volevo inserire come personaggi i miei compagni di classe e amici, ma poi ho pensato che cambiando il titolo da Final Fantasy XIV in Final Fantasy Crystal Chronicle IV e sostituendo i miei amici con gli utenti di Rpg2s e altri forum a cui sono iscritto il mio sogno può diventare realtà. Il progetto rimane tuttavia molto complicato, per questo vorrei o unirmi ad un team che affianchi il mio progetto ai propri o crearne uno da 0 e prometto di impegnarmi non solo nel ruolo di Storyboarder, ma anche in altri campi dove posso tornare utile (quindi praticamente tutto tranne grafica e programmazione Rgss ). Ora vi invito a leggere la trama e le altre informazioni:
Final Fantasy XIV (Titolo da definire):
All'inizio del gioco guiderai tre soldati in una grande nave militare, dovrai sconfiggere i soldati nemici e le loro macchine e attraversare i vari piani dalle prigioni al piano terra fino all'ufficio del generale all'ultimo, sconfitto il generale un elicottero amico verrà a riprenderti per riportarti in accademia.
Uno dei tre soldati ero io e insieme a due miei compagni dell'accademia stavo sostenendo un esame (vedi Final Fantasy VIII).
Prima di iniziare la storia vera e propria narro la mia storia:
Quando avevo dieci anni una città di un altro continente aveva raso al suolo con un inaspettato bombardamento il mio villaggio, perchè lì era custodito un magico sigillo dai poteri misteriosi (un cristallo). Io riesco a salvarmi e raggiungo la città dove si trova l'accademia dove studia mio fratello (accademia di magia e combattimento simile al garden di Final Fantasy VIII). Entro in accademia a soli dieci anni (cinque anni prima dell'età consentita) e io e mio fratello costruiamo una casa ed un cimitero sulle macerie del nostro vecchio villaggio.
Ora inzia la vera trama del gioco:
Dopo il mio ritorno una notte l'esercito del generale di cui vi parlavo prima attacca la città e gli studenti dell'accademia sono chiamati a combattere. I soldati del generale superano le nostre barriere e si dirigono verso le montagne (dove si trova casa mia e di mio fratello), allora io e mio fratello prensìdiamo una moto volante (nome da definire, ma presumo Lagunarock#2) e torniamo a casa dove stabiliamo che il generale (che sarà poi il Boss finale) sta cercando i cristalli e mentre lui guiderà un esercito contro il nemico io devo andare a scoprire i suoi piani in una missione di spionaggio. Si uniscono a me il mio migliore amico (studente dell'accademia) ed il mio cane e altri nove personaggi, ognuno con una sua storia che va scoperta piano piano relativa ai cristalli o al generale.
Alla fine di ogni missione troverai un foglio di carta che narra le avventure di dodici eroi alla ricerca dei cristalli ed io e gli altri ci accorgiamo che il loro viaggio a le stesse tappe del nostro (esempio: sconfiggiamo un drago in una landa desolata? Il drago lascerà un foglietto che racconta di dodici guerrieri che hanno attraversato le lande e hanno sconfitto il drago stesso), questo servirà anche al giocatore per scoprire passaggi segreti, perchè oltre ai foglietti che guadagni dai boss vi sono foglietti nascosti che raccontano di passaggi segreti o altro.
Ovviamente se noi saremo i personaggi non sarò il protagonista, tutti saremo uguali allo stesso modo e ognuno avrà una storia simile alla mia che si può creare da solo.
Il Gameplay:
Il Bs ed il Cms del gioco sono un po' complicati...
-Bs: Il Bs è un classico Bs a turni, ma si combatte direttamente sulla mappa. C'è una barra che mostra lo stato di allerta, quando sei circondato da mostri devi dichiarare lo stato di battaglia prima che i mostri attacchino alle spalle. Lo scontro avviene direttamente sulla mappa e NON PREVEDE L'USO DELL'ABS. Ogni personaggio può scegliere tra Combatti, Zaino e Fuga, le opzioni sotto la voce combatti sono Attacca, Magia Nera, Bianca e Invoca.
-Cms: lo sviluppo dei personaggi si svolgerà come in un qualsiasi Mmorpg, ovvero ogni volta che sali di Lv ti assegneranno una quantità di Ps (Punti Status) e tu devi decidere quali valori alterare tra Attacco, Difesa, Agilità...
Le tecniche invece vengono create attraverso il Ring, ovvero le fusione delle gemme che i nemici lasciano per terra. Allora: i nemici oltre a lasciare per terra oggetti e monete lasciano anche gemme, all'inizio del gioco ti verrà regalato un ricettario che elenca i vari tipi di magie e spiega quali gemme bisogna utilizzare per formarle, allora tu vai nel menù e leggi la ricetta, poi vai nel Ring decidi quali oggetti vuoi fondere ed il gioco è fatto, poi potrai assegnare a chi vuoi la magia o dell'evocazione (in questo gioco non esiste distinzione di classe).
-
Ciao a tutti, ragazzi , sono tornato (veramente non ero andato via, ma non avevo nulla da scrivere...). Sentite, ieri mi è venuta in mente un'idea per Final Fantasy XIV e volevo inserire come personaggi i miei compagni di classe e amici, ma poi ho pensato che cambiando il titolo da Final Fantasy XIV in Final Fantasy Crystal Chronicle IV e sostituendo i miei amici con gli utenti di Rpg2s e un altro Forum a cui sono iscritto (di cui forse posso svelare il nome perchè è gemellato con noi...) il mio sogno può diventare realtà. Il progetto rimane tuttavia molto complicato, per questo vorrei o unirmi ad un team che affianchi il mio progetto ai propri o crearne uno da 0 e prometto di impegnarmi non solo nel ruolo di Storyboarder, ma anche in altri campi dove posso tornare utile (quindi praticamente tutto tranne grafica e programmazione Rgss ). Ora vi invito a leggere la trama e le altre informazioni:
Final Fantasy XIV (Titolo da definire):
All'inizio del gioco guiderai tre soldati in una grande nave militare, dovrai sconfiggere i soldati nemici e le loro macchine e attraversare i vari piani dalle prigioni al piano terra fino all'ufficio del generale all'ultimo, sconfitto il generale un elicottero amico verrà a riprenderti per riportarti in accademia.
Uno dei tre soldati ero io e insieme a due miei compagni dell'accademia stavo sostenendo un esame (vedi Final Fantasy VIII).
Prima di iniziare la storia vera e propria narro la mia storia:
Quando avevo dieci anni una città di un altro continente aveva raso al suolo con un inaspettato bombardamento il mio villaggio, perchè lì era custodito un magico sigillo dai poteri misteriosi (un cristallo). Io riesco a salvarmi e raggiungo la città dove si trova l'accademia dove studia mio fratello (accademia di magia e combattimento simile al garden di Final Fantasy VIII). Entro in accademia a soli dieci anni (cinque anni prima dell'età consentita) e io e mio fratello costruiamo una casa ed un cimitero sulle macerie del nostro vecchio villaggio.
Ora inzia la vera trama del gioco:
Dopo il mio ritorno una notte l'esercito del generale di cui vi parlavo prima attacca la città e gli studenti dell'accademia sono chiamati a combattere. I soldati del generale superano le nostre barriere e si dirigono verso le montagne (dove si trova casa mia e di mio fratello), allora io e mio fratello prensìdiamo una moto volante (nome da definire, ma presumo Lagunarock#2) e torniamo a casa dove stabiliamo che il generale (che sarà poi il Boss finale) sta cercando i cristalli e mentre lui guiderà un esercito contro il nemico io devo andare a scoprire i suoi piani in una missione di spionaggio. Si uniscono a me il mio migliore amico (studente dell'accademia) ed il mio cane e altri nove personaggi, ognuno con una sua storia che va scoperta piano piano relativa ai cristalli o al generale.
Alla fine di ogni missione troverai un foglio di carta che narra le avventure di dodici eroi alla ricerca dei cristalli ed io e gli altri ci accorgiamo che il loro viaggio a le stesse tappe del nostro (esempio: sconfiggiamo un drago in una landa desolata? Il drago lascerà un foglietto che racconta di dodici guerrieri che hanno attraversato le lande e hanno sconfitto il drago stesso), questo servirà anche al giocatore per scoprire passaggi segreti, perchè oltre ai foglietti che guadagni dai boss vi sono foglietti nascosti che raccontano di passaggi segreti o altro.
Ovviamente se noi saremo i personaggi non sarò il protagonista, tutti saremo uguali allo stesso modo e ognuno avrà una storia simile alla mia che si può creare da solo.
Il Gameplay:
Il Bs ed il Cms del gioco sono un po' complicati...
-Bs: Il Bs è un classico Bs a turni, ma si combatte direttamente sulla mappa. C'è una barra che mostra lo stato di allerta, quando sei circondato da mostri devi dichiarare lo stato di battaglia prima che i mostri attacchino alle spalle. Lo scontro avviene direttamente sulla mappa e NON PREVEDE L'USO DELL'ABS. Ogni personaggio può scegliere tra Combatti, Zaino e Fuga, le opzioni sotto la voce combatti sono Attacca, Magia Nera, Bianca e Invoca.
-Cms: lo sviluppo dei personaggi si svolgerà come in un qualsiasi Mmorpg, ovvero ogni volta che sali di Lv ti assegneranno una quantità di Ps (Punti Status) e tu devi decidere quali valori alterare tra Attacco, Difesa, Agilità...
Le tecniche invece vengono create attraverso il Ring, ovvero le fusione delle gemme che i nemici lasciano per terra. Allora: i nemici oltre a lasciare per terra oggetti e monete lasciano anche gemme, all'inizio del gioco ti verrà regalato un ricettario che elenca i vari tipi di magie e spiega quali gemme bisogna utilizzare per formarle, allora tu vai nel menù e leggi la ricetta, poi vai nel Ring decidi quali oggetti vuoi fondere ed il gioco è fatto, poi potrai assegnare a chi vuoi la magia o dell'evocazione (in questo gioco non esiste distinzione di classe).
-
Scusate, mi sono sbagliato: mio padre cerca un programma per MONTARE cartoon, quindi con una vasta scelta di corpi, vestiti, face e quant'altro di preimpostato da cui scegliere. Mi sapete dare una mano?
-
Ma un programma che abbia qualcosa di preimpostato?
Perchè altrimenti basta disegnare bene su carta il personaggio (o su una tavoletta grafica), poi scansionarlo e con un programma di grafica infine colorarlo.
No, niente di preimpostato, mio padre è Web Master, conosce vari linguaggi di programmazione ma non è capace a disegnare a mano...

Sportello Aiuti Veloci XP
in Supporto XP
Posted