RPG Creator : créez votre MMORPG ou RPG sans aucune connaissance en programmation


Disponible le 4 Juin !




- Jouez à votre jeu sur tablettes tactiles, Smartphones et navigateurs Web
- Personnalisez vos menus
- Dessinez facilement et rapidement vos cartes
- Créez des actions pour le combat A-RPG


www.rpgcreator.net


Heures au format UTC + 1 heure [ Heure d’été ]


Règles du forum


Consultez la liste des Scripts : cliquez ici



Publier un nouveau sujet Répondre au sujet  [ 3 messages ] 
Auteur Message
 Sujet du message: Donner des points de caractéristique pour les héros
MessagePublié: 08 Avr 2010, 20:25 
Villageois (Nv 4)

Inscrit le: 06 Déc 2009, 15:47
Messages: 66
Logiciel(s) préféré(s): Rpg maker vx/xp
Sexe: Masculin
Points d'aide: 0/60

Créations :

- Script pour plus d'équipement améliorer de DerVVulfman


Voir ses créations

Bonjour, je poste un script permettant de donner des points de caractéristique au héros.

Je mettrai les explications au prochain poste.
L'auteur est Lettuce
Code: Tout sélectionner
=begin

+------------------------------------------------------------------------------+

� ** Stat points distribution system 1.6                                     

�              By Lettuce.                                     

�                                                                             

�                                                                             

�Some help:                                                                   

�     - Position wasn't stored properly in mode 1 (Thanks Akin)               

�     - Some sort of notification to player (Thanks Akin)                     

�     - Player switch now supports LEFT and RIGHT arrow (Thanks Akin)         

�     - Advice on using class attr instead of global var (Thanks GoldenShadow)

�                                                                             

�-----------------------------------------------------------------------------

�  Ce script, permet de distribuer des points pour augmenter les stats de vos héros             

�                                                                             

� Pour l'appeler : $scene = Scene_Stat_Dist.new(0)                     

�                                                                             

�                                                                             

� Pour donner des points à vos héros utilisez :           

�                                                                             

�    $game_party.members[ID_du_héros].points += Nombre_de_points       

�                                                                             

�  Si vous voulez que votre héros ai ces points après avoir monté d'un niveau :                       

�  Dans Game_Actor, à "def change_exp", sous la ligne 'level_up'; collez  ça :   

�                                                                                               

�    $game_actors[@actor_id].points += Nombre_de_points                 

�                                                                             

�            OU (Si vous voulez le mode RO, expliqué en bas)     

�                                                                                                         

�      $game_actors[@actor_id].points += ((@level/5).floor+2).floor

�                                                                             

� # It seems the game returns non 0 based array if we use game_party >.<;     

�                                                                             

�  **Note**                                                                   

� Le script n'influance pas sur les stats du héros dans la base de données 

�  Il les ajoutes juste.                                       

�  Set the stats to 1 all the way in the database to disable growth :0         

�                                                                             

�  **Modes**                                                                 

�  1 : 1 point / caractéristiques

�     Exemple : Pour augmenter l'attaque vous utiliserez 1 points quelque sois sa valeur

�  2 : Utiliser le systéme RO , les points a donner dépende de la valeur du stat.     

�     Explanation: Dans RO, isi vous avez des stats éléves, vous avez besoin de plus de points pour   

�    les augmenter. Donc si vous avez 90 d'attaque et 5 d'intel, Vous pouvez choisir               

�   d'utiliser 10 point pour 1 d'attaque de plus ou utiliser 10 points pour obtenir 6 d'Intteligence

+------------------------------------------------------------------------------+

=end

#������������������������������ Configuration ���������������������������������#

#Points de départ : Nombre de points reçus au début du jeu

StartPoints = 15

#Le maximun de stats que vous autorisez

MaxStat = 700

MaxHP = 15000

MaxMP = 2500

     #Le maximum de stats : "% chance de toucher l'ennemi, d'esquiver et de faire un coup critique.

MaxHIT = 90 # 100 = Ne rate jamais

MaxEVA = 65 #100 = esquive TOUT les coups : Pas logique ^^'. 50-70 est une bonne moyenne

MaxCRIT = 65 #100  = Toujours des critiques.



    # Combien de points sont nécessaire pour augmenter les stats

PointsPerHP = 1 # Hp

PointsPerMP = 1 # Mp

PointsPerHIT = 5 # % de chance de toucher

PointsPerEVA = 4 #% de chance d'esquiver

PointsPerCRIT = 4 # % chance de critique.



# De combien sont augmenté les stats par points ?

IncreaseBy = 1 # Attaque, défense,intelligence, agilitée

HPIncreaseBy = 5 # Hp

MPIncreaseBy = 5 # Mp

HITIncreaseBy = 1 # % de chance de toucher

EVAIncreaseBy = 1 # % de chance d'esquiver

CRITIncreaseBy = 1 # % chance de critique.





#1 pour le mode normal, 2 ou RO mode [Les points requis sont calculés différaments]

Mode = 1

#Vous pouvez changer la police et la taille :

Fontname = "UmePlus Gothic"

Fontsize = 20



#Layout mode, si vous utilisez des mots long à la place de atk,spi,def or agi ; mettez 2.

LayoutMode = 2



#========================== End Configuration ==================================

OFFSET = -10 #moves equipment part up and down XD

#==============================================================================

# ** Lettuce_Window_Top

#------------------------------------------------------------------------------

#  This window displays Title message

#==============================================================================



class Lettuce_Window_Top < Window_Base

  def initialize

   super(0,0,544,70)

   self.contents = Bitmap.new(width-32,height-32)

   self.contents.font.name = Fontname

   self.contents.font.size = Fontsize

   refresh

   end

   

  def refresh

   self.contents.clear

   self.contents.draw_text(0,-10,544-32,32,"Distribution de Stats",1)

   self.contents.font.size = Fontsize-4

   self.contents.draw_text(0,10,544-32,32,"Gauche ou droite pour changer de héros",1)

  end

   

end

#==============================================================================

# ** Lettuce_Window_Points

#------------------------------------------------------------------------------

#  This window displays the attributes of a party member

#==============================================================================

class Lettuce_Window_Points < Window_Base

  def initialize(member_index)

   super(401,320,144,52)

   self.contents = Bitmap.new(width-32,height-32)

   self.contents.font.name = Fontname

   self.contents.font.size = Fontsize

   refresh(member_index)

  end

 

  def refresh(member_index)

   actor = $game_party.members[member_index]

   points = actor.points

  self.contents.clear

   self.contents.draw_text(0,0,162,20,"Points: "+points.to_s)   

  end

end



#==============================================================================

# ** Lettuce_Window_Info

#------------------------------------------------------------------------------

#  This window displays the attributes of a party member

#==============================================================================



class Lettuce_Window_Info < Window_Base

  def initialize(member_index)

   super(0,71,400,346)

   self.contents = Bitmap.new(width-32,height-32)

   self.contents.font.name = Fontname

   self.contents.font.size = Fontsize

  @exo = 25 #equipment section X coordinate offset

  @exo2 = 35 #equipment section X coordinate offset

  @eyo = -10 #equipment section Y coordinate offset

   refresh(member_index)

  end

   

  def refresh(member_index)

   actor = $game_party.members[member_index]

   self.contents.clear

  self.contents.font.size = Fontsize

   draw_actor_face(actor,10,10,92)

   draw_actor_name(actor,120,10)

   self.contents.font.size = Fontsize

   self.contents.draw_text(190,30,200,20,"Classe: "+actor.class.name)

   self.contents.draw_text(120,30,200,20,"Niv "+actor.level.to_s)

 

  if LayoutMode == 1

    draw_actor_state(actor,200,280,168)

  elsif LayoutMode == 2

    draw_actor_state(actor,220,10)

  end

 

   s1 = actor.exp_s #total exp

  s2 = actor.current_lvl_exp #exp to get to this level

  if s1.is_a?(Numeric)

    s3 = s1-s2 #progress in this level

    s4 = actor.next_lvl_exp #exp needed for next level

    self.contents.font.size = Fontsize - 5

    self.contents.draw_text(230,74,90,20,"Exp: "+s3.to_s+"/"+s4.to_s,0)

    self.contents.font.size = Fontsize

  else

    self.contents.draw_text(230,74,85,20,"-----/-----",2)

  end

   

   #Preparing bar colours

   back_color = Color.new(39, 58, 83, 255)

   

   str_color1 = Color.new(229, 153, 73, 255)

   str_color2 = Color.new(255, 72, 0, 255)

   

   def_color1 = Color.new(210, 255, 0, 255)

   def_color2 = Color.new(85, 129, 9, 255)

   

   spi_color1 = Color.new(99, 133, 161, 255)

   spi_color2 = Color.new(10, 60,107, 255)

   

   agi_color1 = Color.new(167, 125, 180, 255)

   agi_color2 = Color.new(90, 11, 107, 255)

 

  hp_color1 = Color.new(66, 114, 164, 255)

  hp_color2 = Color.new(122, 175, 229, 255)

 

  mp_color1 = Color.new(93, 50, 158, 255)

  mp_color2 = Color.new(145, 122, 229, 255)

 

  exp_color1 = Color.new(246, 243, 224, 255)

  exp_color2 = Color.new(255, 182, 0, 255)

  if s1.is_a?(Numeric)

    self.contents.fill_rect(230,90,89,7,back_color)

    self.contents.gradient_fill_rect(232,92,(85*s3)/s4,3,exp_color1,exp_color2)



  else

    self.contents.fill_rect(230,60,89,7,back_color)

  end

 

   

  self.contents.fill_rect(120,67,104,7,back_color)

   self.contents.gradient_fill_rect(122,69,100*actor.hp/actor.maxhp,3,hp_color1,hp_color2)

  self.contents.draw_text(120,44,100,30,"HP",0)

  self.contents.draw_text(120,44,100,30,actor.hp.to_s + "/" + actor.maxhp.to_s,2)

 

  self.contents.fill_rect(120,90,104,7,back_color)

   self.contents.gradient_fill_rect(122,92,100*actor.mp/actor.maxmp,3,mp_color1,mp_color2)

  self.contents.draw_text(120,67,100,30,"MP",0)

  self.contents.draw_text(120,67,100,30,actor.mp.to_s + "/" + actor.maxmp.to_s,2)

 

  ##weapons

  weapon = $data_weapons[actor.weapon_id]

  shield = $data_armors[actor.armor1_id]

  helm =$data_armors[actor.armor2_id]

  body =$data_armors[actor.armor3_id]

  accessory =$data_armors[actor.armor4_id]

 

  bonus_atk = 0

  bonus_def = 0

  bonus_spi = 0

  bonus_agi = 0

  evasion = 0

  crit = 4

 

  if $data_actors[actor.id].critical_bonus

    crit +=4

  end

 

  if weapon

    bonus_atk += weapon.atk

    bonus_def += weapon.def

    bonus_spi += weapon.spi

    bonus_agi += weapon.agi

    if weapon.critical_bonus

      crit += 4

    end

  end

  if shield

    bonus_atk += shield.atk

    bonus_def += shield.def

    bonus_spi += shield.spi

    bonus_agi += shield.agi

    evasion += shield.eva

  end

    if helm

    bonus_atk += helm.atk

    bonus_def += helm.def

    bonus_spi += helm.spi

    bonus_agi += helm.agi

    evasion += helm.eva

  end

    if body

    bonus_atk += body.atk

    bonus_def += body.def

    bonus_spi += body.spi

    bonus_agi += body.agi

    evasion += body.eva

  end

    if accessory

    bonus_atk += accessory.atk

    bonus_def += accessory.def

    bonus_spi += accessory.spi

    bonus_agi += accessory.agi

    evasion += accessory.eva

  end

  if LayoutMode == 1

    draw_item_name(weapon,160+@exo,125+@eyo,true)

    if weapon.two_handed == true

      draw_item_name(weapon,160+@exo,155+@eyo,true)     

    else

      draw_item_name(shield,160+@exo,155+@eyo,true)

    end

    draw_item_name(helm,160+@exo,185+@eyo,true)

    draw_item_name(body,160+@exo,215+@eyo,true)

    draw_item_name(accessory,160+@exo,245+@eyo,true)

   

    #Testing area for Weapon upgrade script

    #self.contents.font.size = Fontsize - 7

    #self.contents.draw_text(160+@exo,135,30,20,"[+"+weapon.level.to_s+"]",0)

   

    self.contents.font.color = Color.new(87,87,87,255)

    if !weapon

      draw_icon(216,160+@exo,125+@eyo,true)

      self.contents.draw_text(184+@exo,127+@eyo,200,20,"Unequiped")

    end

    if !shield

      draw_icon(217,160+@exo,155+@eyo,true)

      self.contents.draw_text(184+@exo,157+@eyo,200,20,"Unequiped")

    end

    if !helm

      draw_icon(218,160+@exo,185+@eyo,true)

      self.contents.draw_text(184+@exo,187+@eyo,200,20,"Unequiped")

    end

    if !body

      draw_icon(219,160+@exo,215+@eyo,true)

      self.contents.draw_text(184+@exo,217+@eyo,200,20,"Unequiped")

    end

    if !accessory

      draw_icon(220,160+@exo,245+@eyo,true)

      self.contents.draw_text(184+@exo,247+@eyo,200,20,"Unequiped")

    end

    self.contents.font.color = Color.new(255,255,255,255)

   

  elsif LayoutMode == 2

    draw_item_name(weapon,160+@exo2,125+OFFSET+@eyo,true)

    if weapon.two_handed == true

      draw_item_name(weapon,160+@exo2,165+OFFSET+@eyo,true)

    else

      draw_item_name(shield,160+@exo2,165+OFFSET+@eyo,true)

    end

    draw_item_name(helm,160+@exo2,205+OFFSET+@eyo,true)

    draw_item_name(body,160+@exo2,245+OFFSET+@eyo,true)

    draw_item_name(accessory,160+@exo2,285+OFFSET+@eyo,true)

   



     

      self.contents.font.color = Color.new(87,87,87,255)

    if !weapon

      draw_icon(216,160+@exo2,125+OFFSET+@eyo,true)

      self.contents.draw_text(184+@exo2,127+OFFSET+@eyo,200,20,"Déséquipé")

    end

    if !shield and weapon.two_handed == false

      draw_icon(217,160+@exo2,165+OFFSET+@eyo,true)

      self.contents.draw_text(184+@exo2,167+OFFSET+@eyo,200,20,"Déséquipé")

    end

    if !helm

      draw_icon(218,160+@exo2,205+OFFSET+@eyo,true)

      self.contents.draw_text(184+@exo2,207+OFFSET+@eyo,200,20,"Déséquipé")

    end

    if !body

      draw_icon(219,160+@exo2,245+OFFSET+@eyo,true)

      self.contents.draw_text(184+@exo2,247+OFFSET+@eyo,200,20,"Déséquipé")

    end

    if !accessory

      draw_icon(220,160+@exo2,285+OFFSET+@eyo,true)

      self.contents.draw_text(184+@exo2,287+OFFSET+@eyo,200,20,"Déséquipé")

    end

    self.contents.font.color = Color.new(255,255,255,255)

  end

 

 

 

  self.contents.font.size = Fontsize - 5

   self.contents.draw_text(10,120,100,20,Vocab::atk+": ")

   self.contents.draw_text(10,120,100,20,(actor.atk-bonus_atk).to_s+" + "+bonus_atk.to_s,2)

   

   self.contents.fill_rect(10,140,104,7,back_color)

   self.contents.gradient_fill_rect(12,142,((actor.atk-bonus_atk)*100)/MaxStat,3,str_color1,str_color2)

   

   self.contents.draw_text(10,150,100,20,Vocab::def+": ")

   self.contents.draw_text(10,150,100,20,(actor.def-bonus_def).to_s+" + "+bonus_def.to_s,2)

   

   self.contents.fill_rect(10,170,104,7,back_color)

   self.contents.gradient_fill_rect(12,172,((actor.def-bonus_def)*100)/MaxStat,3,def_color1,def_color2)

   

   self.contents.draw_text(10,180,100,20,Vocab::spi+": ")

   self.contents.draw_text(10,180,100,20,(actor.spi-bonus_spi).to_s+" + "+bonus_spi.to_s,2)

   

   self.contents.fill_rect(10,200,104,7,back_color)

   self.contents.gradient_fill_rect(12,202,((actor.spi-bonus_spi)*100)/MaxStat,3,spi_color1,spi_color2)

   

   self.contents.draw_text(10,210,100,20,Vocab::agi+": ")

   self.contents.draw_text(10,210,100,20,(actor.agi-bonus_agi).to_s+" + "+bonus_agi.to_s,2)

   

   self.contents.fill_rect(10,230,104,7,back_color)

   self.contents.gradient_fill_rect(12,232,((actor.agi-bonus_agi)*100)/MaxStat,3,agi_color1,agi_color2)

   

  if weapon

    hit_rate = weapon.hit

  else

    hit_rate = 95

  end

   

   

  self.contents.font.size = Fontsize - 5

  self.contents.font.color = Color.new(162,212,98,255)

  self.contents.draw_text(10,245,100,20,"Attaque max.:",2)

  self.contents.draw_text(10,260,100,20,"Frappe(%):",2)

  self.contents.draw_text(10,275,100,20,"Esquive(%):",2)

  self.contents.draw_text(10,290,100,20,"Critique(%):",2)

 

  self.contents.draw_text(120,245,60,20,(actor.atk*4).to_s,0)

  self.contents.draw_text(120,260,60,20,actor.base_hit.to_s + "+" + actor.hitr.to_s,0)

  self.contents.draw_text(120,275,60,20,actor.base_eva.to_s + "+" +actor.evar.to_s,0)

  self.contents.draw_text(120,290,60,20,actor.base_cri.to_s + "+" + actor.crir.to_s,0)

 

  self.contents.font.size = Fontsize-6

  self.contents.font.color = text_color(16)

  self.contents.draw_text(135,260,60,20,"    [Req:"+PointsPerHIT.to_s+"pt.]",2)

  self.contents.draw_text(135,275,60,20,"    [Req:"+PointsPerEVA.to_s+"pt.]",2)

  self.contents.draw_text(135,290,60,20,"    [Req:"+PointsPerCRIT.to_s+"pt.]",2)

 

  #self.contents.draw_text(120,260,60,20,(hit_rate+actor.hit_bonus).to_s,0)

  #self.contents.draw_text(120,275,60,20,(evasion+actor.eva).to_s,0)

  #self.contents.draw_text(120,290,60,20,(crit+actor.cri_bonus).to_s,0)

 

  if LayoutMode == 1

   

  self.contents.font.color = Color.new(155,199,206,255)

  self.contents.font.size = Fontsize - 8

  if weapon

  self.contents.draw_text(185+@exo,140+@eyo,100,20,Vocab::atk+"+"+weapon.atk.to_s)

  self.contents.draw_text(219+@exo,140+@eyo,100,20,Vocab::def+"+"+weapon.def.to_s)

  self.contents.draw_text(253+@exo,140+@eyo,100,20,Vocab::spi+"+"+weapon.spi.to_s)

  self.contents.draw_text(287+@exo,140+@eyo,100,20,Vocab::agi+"+"+weapon.agi.to_s)

  end



  if shield

  self.contents.draw_text(185+@exo,170+@eyo,100,20,Vocab::atk+"+"+shield.atk.to_s)

  self.contents.draw_text(219+@exo,170+@eyo,100,20,Vocab::def+"+"+shield.def.to_s)

  self.contents.draw_text(253+@exo,170+@eyo,100,20,Vocab::spi+"+"+shield.spi.to_s)

  self.contents.draw_text(287+@exo,170+@eyo,100,20,Vocab::agi+"+"+shield.agi.to_s)

  end

 

  if helm

  self.contents.draw_text(185+@exo,200+@eyo,100,20,Vocab::atk+"+"+helm.atk.to_s)

  self.contents.draw_text(219+@exo,200+@eyo,100,20,Vocab::def+"+"+helm.def.to_s)

  self.contents.draw_text(253+@exo,200+@eyo,100,20,Vocab::spi+"+"+helm.spi.to_s)

  self.contents.draw_text(287+@exo,200+@eyo,100,20,Vocab::agi+"+"+helm.agi.to_s)

  end

 

  if body

  self.contents.draw_text(185+@exo,230+@eyo,100,20,Vocab::atk+"+"+body.atk.to_s)

  self.contents.draw_text(219+@exo,230+@eyo,100,20,Vocab::def+"+"+body.def.to_s)

  self.contents.draw_text(253+@exo,230+@eyo,100,20,Vocab::spi+"+"+body.spi.to_s)

  self.contents.draw_text(287+@exo,230+@eyo,100,20,Vocab::agi+"+"+body.agi.to_s)

  end

 

  if accessory

  self.contents.draw_text(185+@exo,260+@eyo,100,20,Vocab::atk+"+"+accessory.atk.to_s)

  self.contents.draw_text(219+@exo,260+@eyo,100,20,Vocab::def+"+"+accessory.def.to_s)

  self.contents.draw_text(253+@exo,260+@eyo,100,20,Vocab::spi+"+"+accessory.spi.to_s)

  self.contents.draw_text(287+@exo,260+@eyo,100,20,Vocab::agi+"+"+accessory.agi.to_s)

  end

  end

 

   if Mode == 2

     self.contents.font.size = Fontsize - 8

     self.contents.font.color = Color.new(155,199,206,255)

     self.contents.draw_text(23,100,125,20,"POINTS",2)

     self.contents.draw_text(29,110,125,20,"REQUIS",2)

     self.contents.font.size = Fontsize - 4

     self.contents.draw_text(20,125,115,20,required(actor.atk-bonus_atk).to_s,2)

     self.contents.draw_text(20,155,115,20,required(actor.def-bonus_def).to_s,2)

     self.contents.draw_text(20,185,115,20,required(actor.spi-bonus_spi).to_s,2)

     self.contents.draw_text(20,215,115,20,required(actor.agi-bonus_agi).to_s,2)

   end



  if LayoutMode == 2

  self.contents.font.color = Color.new(155,199,206,255)

  self.contents.font.size = Fontsize - 8

  if weapon

  self.contents.draw_text(185+@exo2,140+OFFSET+@eyo,100,20,Vocab::atk+"+"+weapon.atk.to_s)

  self.contents.draw_text(185+@exo2,150+OFFSET+@eyo,100,20,Vocab::def+"+"+weapon.def.to_s)

  self.contents.draw_text(253+@exo2,140+OFFSET+@eyo,100,20,Vocab::spi+"+"+weapon.spi.to_s)

  self.contents.draw_text(253+@exo2,150+OFFSET+@eyo,100,20,Vocab::agi+"+"+weapon.agi.to_s)

  end



  if shield

  self.contents.draw_text(185+@exo2,180+OFFSET+@eyo,100,20,Vocab::atk+"+"+shield.atk.to_s)

  self.contents.draw_text(185+@exo2,190+OFFSET+@eyo,100,20,Vocab::def+"+"+shield.def.to_s)

  self.contents.draw_text(253+@exo2,180+OFFSET+@eyo,100,20,Vocab::spi+"+"+shield.spi.to_s)

  self.contents.draw_text(253+@exo2,190+OFFSET+@eyo,100,20,Vocab::agi+"+"+shield.agi.to_s)

  end

 

  if helm

  self.contents.draw_text(185+@exo2,220+OFFSET+@eyo,100,20,Vocab::atk+"+"+helm.atk.to_s)

  self.contents.draw_text(185+@exo2,230+OFFSET+@eyo,100,20,Vocab::def+"+"+helm.def.to_s)

  self.contents.draw_text(253+@exo2,220+OFFSET+@eyo,100,20,Vocab::spi+"+"+helm.spi.to_s)

  self.contents.draw_text(253+@exo2,230+OFFSET+@eyo,100,20,Vocab::agi+"+"+helm.agi.to_s)

  end

 

  if body

  self.contents.draw_text(185+@exo2,260+OFFSET+@eyo,100,20,Vocab::atk+"+"+body.atk.to_s)

  self.contents.draw_text(185+@exo2,270+OFFSET+@eyo,100,20,Vocab::def+"+"+body.def.to_s)

  self.contents.draw_text(253+@exo2,260+OFFSET+@eyo,100,20,Vocab::spi+"+"+body.spi.to_s)

  self.contents.draw_text(253+@exo2,270+OFFSET+@eyo,100,20,Vocab::agi+"+"+body.agi.to_s)

  end

 

  if accessory

  self.contents.draw_text(185+@exo2,300+OFFSET+@eyo,100,20,Vocab::atk+"+"+accessory.atk.to_s)

  self.contents.draw_text(185+@exo2,310+OFFSET+@eyo,100,20,Vocab::def+"+"+accessory.def.to_s)

  self.contents.draw_text(253+@exo2,300+OFFSET+@eyo,100,20,Vocab::spi+"+"+accessory.spi.to_s)

  self.contents.draw_text(253+@exo2,310+OFFSET+@eyo,100,20,Vocab::agi+"+"+accessory.agi.to_s)

  end

  end

end



  def required(base)

   return (((base-1)/10)+2).floor

  end

 

end



#==============================================================================

# ** Lettuce_Window_Help

#------------------------------------------------------------------------------

#  This window displays property of each attribute

#==============================================================================

class Lettuce_Window_Help < Window_Base

  def initialize(index)

   super(401,372,144,44)

   self.contents = Bitmap.new(width-32,height-32)

   self.contents.font.size = Fontsize - 6

   refresh(index)

  end

 

  def refresh(index)

   self.contents.clear

  self.contents.font.color = text_color(16)



    case index

    when 0

      self.contents.draw_text(0,-5,112,20,"HP + "+HPIncreaseBy.to_s)

    when 1

      self.contents.draw_text(0,-5,112,20,"MP + "+MPIncreaseBy.to_s)

    when 2

      self.contents.draw_text(0,-5,112,20,Vocab::atk+" + "+IncreaseBy.to_s)

    when 3

      self.contents.draw_text(0,-5,112,20,Vocab::def+" + "+IncreaseBy.to_s)

    when 4

      self.contents.draw_text(0,-5,112,20,Vocab::spi+" + "+IncreaseBy.to_s)

    when 5

      self.contents.draw_text(0,-5,112,20,Vocab::agi+" + "+IncreaseBy.to_s)

    when 6

      self.contents.draw_text(0,-5,112,20,"HIT + "+HITIncreaseBy.to_s)

    when 7

      self.contents.draw_text(0,-5,112,20,"EVA + "+EVAIncreaseBy.to_s)

    when 8

      self.contents.draw_text(0,-5,112,20,"CRIT + "+CRITIncreaseBy.to_s)

    end



 

  end

 

end

 



#==============================================================================

# ** Scene_Stat_Dist

#------------------------------------------------------------------------------

#  Performs stat distribution process :)

#==============================================================================

class Scene_Stat_Dist < Scene_Base

  def initialize(menu_index)

   @menu_index = menu_index

  end

 

  def start

   super

   create_menu_background

  ihp = Vocab::hp

  imp = Vocab::mp

   i1 = Vocab::atk

   i2 = Vocab::def

   i3 = Vocab::spi

   i4 = Vocab::agi

  i5 = "Frappe"

  i6 = "Esquive"

  i7 = "Critique"

   @window_select = Window_Command.new(144,[ihp,imp,i1,i2,i3,i4,i5,i6,i7])

   if $position

     @window_select.index = $position - 1

   else

     @window_select.index = 0

   end

   

   @window_select.active = true

   @window_select.x = 401

   @window_select.y = 71

   

   @window_top = Lettuce_Window_Top.new

   @window_points = Lettuce_Window_Points.new(@menu_index)

   @window_info = Lettuce_Window_Info.new(@menu_index)

   @window_help = Lettuce_Window_Help.new(@window_select.index)

  end

   

  def terminate

   super

   dispose_menu_background

   @window_top.dispose

   @window_points.dispose

   @window_info.dispose

   @window_help.dispose

   @window_select.dispose

  end

 

  def update

   update_menu_background

   #@window_points.refresh(@menu_index)

 

   @window_select.update

   #@window_help.refresh(@window_select.index)

  if Input.trigger?(Input::UP) or Input.trigger?(Input::DOWN)

    @window_help.refresh(@window_select.index)

  end

 

   @changes = 0

   if Input.trigger?(Input::B)

     Sound.play_cancel

     $scene = Scene_Map.new

   elsif Input.trigger?(Input::R) or Input.trigger?(Input::RIGHT)

     @menu_index += 1

     @menu_index %= $game_party.members.size

     $scene = Scene_Stat_Dist.new(@menu_index)

   elsif Input.trigger?(Input::L) or Input.trigger?(Input::LEFT)

     @menu_index += $game_party.members.size - 1

     @menu_index %= $game_party.members.size

     $scene = Scene_Stat_Dist.new(@menu_index)

   elsif Input.trigger?(Input::C)

     #Points addition begins

     #which attribute

     if Mode == 1

      do_point_reg

     elsif Mode == 2

      do_point_rag

     end

   end 



  end

 

  def do_point_reg

   @att = @window_select.index

 

  actor = $game_party.members[@menu_index]

 

##weapons

  weapon = $data_weapons[actor.weapon_id]

  shield = $data_armors[actor.armor1_id]

  helm =$data_armors[actor.armor2_id]

  body =$data_armors[actor.armor3_id]

  accessory =$data_armors[actor.armor4_id]

 

  bonus_atk = 0

  bonus_def = 0

  bonus_spi = 0

  bonus_agi = 0

 

  if weapon

    bonus_atk += weapon.atk

    bonus_def += weapon.def

    bonus_spi += weapon.spi

    bonus_agi += weapon.agi

  end

  if shield

    bonus_atk += shield.atk

    bonus_def += shield.def

    bonus_spi += shield.spi

    bonus_agi += shield.agi

  end

    if helm

    bonus_atk += helm.atk

    bonus_def += helm.def

    bonus_spi += helm.spi

    bonus_agi += helm.agi

  end

    if body

    bonus_atk += body.atk

    bonus_def += body.def

    bonus_spi += body.spi

    bonus_agi += body.agi

  end

    if accessory

    bonus_atk += accessory.atk

    bonus_def += accessory.def

    bonus_spi += accessory.spi

    bonus_agi += accessory.agi

  end

 

     case @att

   

    when 0 #HP

      if actor.points < PointsPerHP

        Sound.play_cancel

      elsif actor.maxhp >= MaxHP

        Sound.play_cancel

      else

      Sound.play_use_item

        $game_party.members[@menu_index].maxhp += HPIncreaseBy

      if $game_party.members[@menu_index].maxhp > MaxHP

        $game_party.members[@menu_index].maxhp = MaxHP

      end

        actor.points -= PointsPerHP

        @changes += 1

      $position = 1

      end

   

    when 1 #MP

      if actor.points < PointsPerMP

        Sound.play_cancel

      elsif actor.maxmp >= MaxMP

        Sound.play_cancel

      else

      Sound.play_use_item

        $game_party.members[@menu_index].maxmp += MPIncreaseBy

      if $game_party.members[@menu_index].maxmp > MaxMP

        $game_party.members[@menu_index].maxmp = MaxMP

      end

        actor.points -= PointsPerMP

        @changes += 1

      $position = 1

      end

   

     when 2 #ATK

      if actor.points < 1

        Sound.play_cancel

      elsif (actor.atk-bonus_atk) >= MaxStat

        Sound.play_cancel

      else

      Sound.play_use_item

        $game_party.members[@menu_index].atk += IncreaseBy

      if ($game_party.members[@menu_index].atk-bonus_atk) > MaxStat

        $game_party.members[@menu_index].atk = MaxStat+bonus_atk

      end

        actor.points -= 1

        @changes += 1

      $position = 1

      end

      

     when 3 #DEF

      if actor.points < 1

        Sound.play_cancel

      elsif (actor.def-bonus_def) >= MaxStat

        Sound.play_cancel

      else

      Sound.play_use_item

        $game_party.members[@menu_index].def += IncreaseBy

      if ($game_party.members[@menu_index].def-bonus_def) > MaxStat

        $game_party.members[@menu_index].def = MaxStat+bonus_def

      end

        actor.points -= 1

        @changes += 1

      $position = 2

      end

      

     when 4 #SPI

      if actor.points < 1

        Sound.play_cancel

      elsif (actor.spi-bonus_spi) >= MaxStat

        Sound.play_cancel

      else

      Sound.play_use_item

        $game_party.members[@menu_index].spi += IncreaseBy

      if ($game_party.members[@menu_index].spi-bonus_spi) > MaxStat

        $game_party.members[@menu_index].spi = MaxStat+bonus_spi

      end

        actor.points -= 1

        @changes += 1

      $position = 3

      end

     when 5 #AGI

      if actor.points < 1

        Sound.play_cancel

      elsif (actor.agi-bonus_agi) >= MaxStat

        Sound.play_cancel

      else

      Sound.play_use_item

        $game_party.members[@menu_index].agi += IncreaseBy

      if ($game_party.members[@menu_index].agi-bonus_agi) > MaxStat

        $game_party.members[@menu_index].agi = MaxStat+bonus_agi

      end

        actor.points -= 1

        @changes += 1

      $position = 4

      end

    

    

    when 6 #HIT

      if actor.points < PointsPerHIT

        Sound.play_cancel

      elsif actor.hitr >= MaxHIT

        Sound.play_cancel

      else

      Sound.play_use_item

        $game_party.members[@menu_index].hitr += HITIncreaseBy

      if $game_party.members[@menu_index].hitr > MaxHIT

        $game_party.members[@menu_index].hitr = MaxHIT

      end

        actor.points -= PointsPerHIT

        @changes += 1

      $position = 1

      end

    when 7 #EVA

      if actor.points < PointsPerEVA

        Sound.play_cancel

      elsif actor.evar >= MaxEVA

        Sound.play_cancel

      else

      Sound.play_use_item

        $game_party.members[@menu_index].evar += EVAIncreaseBy

      if $game_party.members[@menu_index].evar > MaxEVA

        $game_party.members[@menu_index].evar = MaxEVA

      end

        actor.points -= PointsPerEVA

        @changes += 1

      $position = 1

      end

    when 8 #CRIT

      if actor.points < PointsPerCRIT

        Sound.play_cancel

      elsif actor.crir >= MaxCRIT

        Sound.play_cancel

      else

      Sound.play_use_item

        $game_party.members[@menu_index].crir += CRITIncreaseBy

      if $game_party.members[@menu_index].crir > MaxCRIT

        $game_party.members[@menu_index].crir = MaxCRIT

      end

        actor.points -= PointsPerCRIT

        @changes += 1

      $position = 1

      end

  end

 

  if @changes > 0

      @window_info.refresh(@menu_index)

      @window_points.refresh(@menu_index)

        #$scene = Scene_Stat_Dist.new(@menu_index)

     end

  end

 

  def do_point_rag

   @att = @window_select.index

 

  actor = $game_party.members[@menu_index]

 

##weapons

  weapon = $data_weapons[actor.weapon_id]

  shield = $data_armors[actor.armor1_id]

  helm =$data_armors[actor.armor2_id]

  body =$data_armors[actor.armor3_id]

  accessory =$data_armors[actor.armor4_id]

 

  bonus_atk = 0

  bonus_def = 0

  bonus_spi = 0

  bonus_agi = 0

 

  if weapon

    bonus_atk += weapon.atk

    bonus_def += weapon.def

    bonus_spi += weapon.spi

    bonus_agi += weapon.agi

  end

  if shield

    bonus_atk += shield.atk

    bonus_def += shield.def

    bonus_spi += shield.spi

    bonus_agi += shield.agi

  end

    if helm

    bonus_atk += helm.atk

    bonus_def += helm.def

    bonus_spi += helm.spi

    bonus_agi += helm.agi

  end

    if body

    bonus_atk += body.atk

    bonus_def += body.def

    bonus_spi += body.spi

    bonus_agi += body.agi

  end

    if accessory

    bonus_atk += accessory.atk

    bonus_def += accessory.def

    bonus_spi += accessory.spi

    bonus_agi += accessory.agi

  end

 

     case @att

   

    when 0 #HP

      if actor.points < PointsPerHP

        Sound.play_cancel

      elsif actor.maxhp >= MaxHP

        Sound.play_cancel

      else

      Sound.play_use_item

        $game_party.members[@menu_index].maxhp += HPIncreaseBy

      if $game_party.members[@menu_index].maxhp > MaxHP

        $game_party.members[@menu_index].maxhp = MaxHP

      end

        actor.points -= PointsPerHP

        @changes += 1

      $position = 1

      end

   

    when 1 #MP

      if actor.points < PointsPerMP

        Sound.play_cancel

      elsif actor.maxmp >= MaxMP

        Sound.play_cancel

      else

      Sound.play_use_item

        $game_party.members[@menu_index].maxmp += MPIncreaseBy

      if $game_party.members[@menu_index].maxmp > MaxMP

        $game_party.members[@menu_index].maxmp = MaxMP

      end

        actor.points -= PointsPerMP

        @changes += 1

      $position = 1

      end

   

     when 2 #ATK

      base_value = actor.atk-bonus_atk

      points = actor.points

      if enough_point(base_value,points)

        Sound.play_cancel

      elsif (actor.atk-bonus_atk) >= MaxStat

        Sound.play_cancel

      else

      Sound.play_use_item

        $game_party.members[@menu_index].atk += IncreaseBy

      if ($game_party.members[@menu_index].atk-bonus_atk) > MaxStat

        $game_party.members[@menu_index].atk = MaxStat+bonus_atk

      end

        actor.points -= required(base_value)

        @changes += 1

        $position = 1

      end

      

     when 3 #DEF

      base_value = actor.def-bonus_def

      points = actor.points

      if enough_point(base_value,points)

        Sound.play_cancel

      elsif (actor.def-bonus_def) >= MaxStat

        Sound.play_cancel

      else

      Sound.play_use_item

        $game_party.members[@menu_index].def += IncreaseBy

      if ($game_party.members[@menu_index].def-bonus_def) > MaxStat

        $game_party.members[@menu_index].def = MaxStat+bonus_def

      end

        actor.points -= required(base_value)

        @changes += 1

        $position = 2

      end

      

     when 4 #SPI

      base_value = actor.spi-bonus_spi

      points = actor.points

      if enough_point(base_value,points)

        Sound.play_cancel

      elsif (actor.spi-bonus_spi) >= MaxStat

        Sound.play_cancel

      else

      Sound.play_use_item

        $game_party.members[@menu_index].spi += IncreaseBy

      if ($game_party.members[@menu_index].spi-bonus_spi) > MaxStat

        $game_party.members[@menu_index].spi = MaxStat+bonus_spi

      end

        actor.points -= required(base_value)

        @changes += 1

        $position = 3

      end

     when 5 #AGI

      base_value = actor.agi-bonus_agi

      points = actor.points

      if enough_point(base_value,points)

        Sound.play_cancel

      elsif (actor.agi-bonus_agi) >= MaxStat

        Sound.play_cancel

      else

      Sound.play_use_item

        $game_party.members[@menu_index].agi += IncreaseBy

      if ($game_party.members[@menu_index].agi-bonus_agi) > MaxStat

        $game_party.members[@menu_index].agi = MaxStat+bonus_agi

      end

        actor.points -= required(base_value)

        @changes += 1

        $position = 4

      end

    when 6 #HIT

      if actor.points < PointsPerHIT

        Sound.play_cancel

      elsif actor.hitr >= MaxHIT

        Sound.play_cancel

      else

      Sound.play_use_item

        $game_party.members[@menu_index].hitr += HITIncreaseBy

      if $game_party.members[@menu_index].hitr > MaxHIT

        $game_party.members[@menu_index].hitr = MaxHIT

      end

        actor.points -= PointsPerHIT

        @changes += 1

      $position = 1

      end

    when 7 #EVA

      if actor.points < PointsPerEVA

        Sound.play_cancel

      elsif actor.evar >= MaxEVA

        Sound.play_cancel

      else

      Sound.play_use_item

        $game_party.members[@menu_index].evar += EVAIncreaseBy

      if $game_party.members[@menu_index].evar > MaxEVA

        $game_party.members[@menu_index].evar = MaxEVA

      end

        actor.points -= PointsPerEVA

        @changes += 1

      $position = 1

      end

    when 8 #CRIT

      if actor.points < PointsPerCRIT

        Sound.play_cancel

      elsif actor.crir >= MaxCRIT

        Sound.play_cancel

      else

      Sound.play_use_item

        $game_party.members[@menu_index].crir += CRITIncreaseBy

      if $game_party.members[@menu_index].crir > MaxCRIT

        $game_party.members[@menu_index].crir = MaxCRIT

      end

        actor.points -= PointsPerCRIT

        @changes += 1

      $position = 1

      end

     end

     if @changes > 0

      @window_points.refresh(@menu_index)

      @window_info.refresh(@menu_index)

      #$scene = Scene_Stat_Dist.new(@menu_index)

     end

  end

 

  def enough_point(base,points)

   required = (((base-1)/10)+2).floor

   if required > points

     return true

   elsif required <= points

     return false

   end

  end

 

  def required(base)

   return (((base-1)/10)+2).floor

  end

 

end





#==============================================================================

# ** Game_Actor

#------------------------------------------------------------------------------

#  Giving game actor a point attribute

#  -> $game_party.member[x].points

#==============================================================================



class Game_Actor < Game_Battler



  attr_accessor :points

  attr_accessor :hit_bonus

  attr_accessor :eva_bonus

  attr_accessor :cri_bonus

  attr_accessor :hitr

  attr_accessor :evar

  attr_accessor :crir

  #attr_accessor :current_lvl_exp

  #attr_accessor :next_lvl_exp

  alias Lettuce_Game_Actor_Ini initialize

 

  def initialize(actor_id)

    Lettuce_Game_Actor_Ini(actor_id)

     @points = StartPoints

     @hitr = 0

     @evar = 0

     @crir = 0

     #@current_lvl_exp = @exp_list[@level-1]

     #@next_lvl_exp = @exp_list[@level]

  end



  def points

     return @points

  end

 

  #--------------------------------------------------------------------------

  # * Get Hit Rate

  #--------------------------------------------------------------------------

  def hit

    if two_swords_style

      n1 = weapons[0] == nil ? 95 : weapons[0].hit

      n2 = weapons[1] == nil ? 95 : weapons[1].hit

      n = [n1, n2].min

    else

      n = weapons[0] == nil ? 95 : weapons[0].hit

    end

    if n+@hitr <= MaxHIT

    return n+@hitr

  else return MaxHIT

    end

  end

  #--------------------------------------------------------------------------

  # * Get Evasion Rate

  #--------------------------------------------------------------------------

  def eva

    n = 5

    for item in armors.compact do n += item.eva end

    if n+@evar <= MaxEVA

     return n+@evar

   else return MaxEVA

     end

  end

  #--------------------------------------------------------------------------

  # * Get Critical Ratio

  #--------------------------------------------------------------------------

  def cri

    n = 4

    n += 4 if actor.critical_bonus

    for weapon in weapons.compact

      n += 4 if weapon.critical_bonus

    end

    if n+@crir <= MaxCRIT

      return n+@crir

    else return MaxCRIT

      end

  end

 

#--------------------------------------------------------------------------

  # * Get Hit Rate

  #--------------------------------------------------------------------------

  def base_hit

    if two_swords_style

      n1 = weapons[0] == nil ? 95 : weapons[0].hit

      n2 = weapons[1] == nil ? 95 : weapons[1].hit

      n = [n1, n2].min

    else

      n = weapons[0] == nil ? 95 : weapons[0].hit

    end

    return n

  end

  #--------------------------------------------------------------------------

  # * Get Evasion Rate

  #--------------------------------------------------------------------------

  def base_eva

    n = 5

    for item in armors.compact do n += item.eva end

    return n

  end

  #--------------------------------------------------------------------------

  # * Get Critical Ratio

  #--------------------------------------------------------------------------

  def base_cri

    n = 4

    n += 4 if actor.critical_bonus

    for weapon in weapons.compact

      n += 4 if weapon.critical_bonus

    end

    return n

  end

 

 

  #--------------------------------------------------------------------------

  # * bonus rates

  #--------------------------------------------------------------------------   

  def hitr

    return @hitr

  end

 

  def evar

    return @evar

  end

 

  def crir

    return @crir

  end

   

   

 

  def current_lvl_exp

    return @exp_list[@level]

  end

 

  def next_lvl_exp

    return @exp_list[@level+1]-@exp_list[@level]

  end

end


Comme d'habitude, le mettre au dessus de main.


Dernière édition par dark-overlord le 08 Avr 2010, 20:48, édité 1 fois au total.

Haut
 Profil  
 
 Sujet du message: Re: Donner des points de caractéristique pour les héros
MessagePublié: 08 Avr 2010, 20:47 
Villageois (Nv 4)

Inscrit le: 06 Déc 2009, 15:47
Messages: 66
Logiciel(s) préféré(s): Rpg maker vx/xp
Sexe: Masculin
Points d'aide: 0/60

Créations :

- Script pour plus d'équipement améliorer de DerVVulfman


Voir ses créations

Explication:

Pour appeler le menu de caractéristique: <>Inséré script:
Code: Tout sélectionner
$scene = Scene_Stat_Dist.new(0)


Pour donner des points au héros: <>Inséré script:
Code: Tout sélectionner
$game_party.members[ID].points += XX
XX étant le nombre de points
et ID est l'ID du héros de la base de donnés.
Pour donner des points au héros quand il monte de niveau: Allez dans l'éditeur de script, dans Game_Actor, à "def change_exp" (ligne 542), sous la ligne 'level_up'; collez ça :
Code: Tout sélectionner
$game_actors[@actor_id].points += XX
XX est le nombres de points donner.

Pour configurer le coût des points pour les caractéristique:
Ligne 99 à 129 de ce script

StartPoints = XX
Nombres de points disponibles au commencement du jeu.

MaxStats = XX
Nombres maximum de stats augmentez (Force, Défense, Intelligence, Agilité)

MaxHP = XX
Nombres maximum de HP (Vie) augmenter autoriser

MaxMP = XX
Maximum de MP (magie) augmenter autoriser

MaxHIT = XX
Nombres de précision augmenter autoriser (si vous mettez 100, sa ne rate jamais)

MaxEVA = XX
Nombres de chance d'esquiver les coups (si vous mettez 100, esquive tous les coups)

MaxCRIT = XX
Nombres de critique augmenter autoriser (si vous mettez 100, sa sera toujours des coup critique)

Combien de points son nécessaire pour augmentez:
PointsPerHP = XX
Nombres de point nécessaire pour augmentez

Pareil pour les autres caractéristiques.

De combien son augmentez les stats par point:
IncreaseBy = XX
De combien est augmenter la force, défense, intelligence, agilité par points.

Pareil pour les autres stats.


Haut
 Profil  
 
 Sujet du message: Re: Donner des points de caractéristique pour les héros
MessagePublié: 08 Avr 2010, 20:50 
Villageois (Nv 4)

Inscrit le: 06 Déc 2009, 15:47
Messages: 66
Logiciel(s) préféré(s): Rpg maker vx/xp
Sexe: Masculin
Points d'aide: 0/60

Créations :

- Script pour plus d'équipement améliorer de DerVVulfman


Voir ses créations

Pour appeler le menu des stats depuis le menu:
remplacer le script Scene_Menu par celui-ci:
Code: Tout sélectionner
#==============================================================================
# ** Scene_Menu
#------------------------------------------------------------------------------
#  This class performs the menu screen processing.
#==============================================================================

class Scene_Menu < Scene_Base
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     menu_index : command cursor's initial position
  #--------------------------------------------------------------------------
  def initialize(menu_index = 0)
    @menu_index = menu_index
  end
  #--------------------------------------------------------------------------
  # * Start processing
  #--------------------------------------------------------------------------
  def start
    super
    create_menu_background
    create_command_window
    @gold_window = Window_Gold.new(0, 360)
    @status_window = Window_MenuStatus.new(160, 0)
  end
  #--------------------------------------------------------------------------
  # * Termination Processing
  #--------------------------------------------------------------------------
  def terminate
    super
    dispose_menu_background
    @command_window.dispose
    @gold_window.dispose
    @status_window.dispose
  end
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    super
    update_menu_background
    @command_window.update
    @gold_window.update
    @status_window.update
    if @command_window.active
      update_command_selection
    elsif @status_window.active
      update_actor_selection
    end
  end
  #--------------------------------------------------------------------------
  # * Create Command Window
  #--------------------------------------------------------------------------
  def create_command_window
s1 = Vocab::item
s2 = Vocab::skill
s3 = Vocab::equip
s4 = Vocab::status
s5 = Vocab::save
s6 = "Caractéristique"
s7 = Vocab::game_end
    @command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6,s7])
    @command_window.index = @menu_index
    if $game_party.members.size == 0          # If number of party members is 0
      @command_window.draw_item(0, false)     # Disable item
      @command_window.draw_item(1, false)     # Disable skill
      @command_window.draw_item(2, false)     # Disable equipment
      @command_window.draw_item(3, false)     # Disable status
    end
    if $game_system.save_disabled             # If save is forbidden
      @command_window.draw_item(4, false)     # Disable save
    end
  end
  #--------------------------------------------------------------------------
  # * Update Command Selection
  #--------------------------------------------------------------------------
  def update_command_selection
    if Input.trigger?(Input::B)
      Sound.play_cancel
      $scene = Scene_Map.new
    elsif Input.trigger?(Input::C)
      if $game_party.members.size == 0 and @command_window.index < 4
        Sound.play_buzzer
        return
      elsif $game_system.save_disabled and @command_window.index == 4
        Sound.play_buzzer
        return
      end
      Sound.play_decision
      case @command_window.index
      when 0      # Item
        $scene = Scene_Item.new
      when 1,2,3  # Skill, equipment, status
        start_actor_selection
      when 4      # Save
        $scene = Scene_File.new(true, false, false)
      when 5    #distribution de caractéristique
         $scene = Scene_Stat_Dist.new(0)
       when 6     # End Game
        $scene = Scene_End.new
      end
    end
  end
  #--------------------------------------------------------------------------
  # * Start Actor Selection
  #--------------------------------------------------------------------------
  def start_actor_selection
    @command_window.active = false
    @status_window.active = true
    if $game_party.last_actor_index < @status_window.item_max
      @status_window.index = $game_party.last_actor_index
    else
      @status_window.index = 0
    end
  end
  #--------------------------------------------------------------------------
  # * End Actor Selection
  #--------------------------------------------------------------------------
  def end_actor_selection
    @command_window.active = true
    @status_window.active = false
    @status_window.index = -1
  end
  #--------------------------------------------------------------------------
  # * Update Actor Selection
  #--------------------------------------------------------------------------
  def update_actor_selection
    if Input.trigger?(Input::B)
      Sound.play_cancel
      end_actor_selection
    elsif Input.trigger?(Input::C)
      $game_party.last_actor_index = @status_window.index
      Sound.play_decision
      case @command_window.index
      when 1  # skill
        $scene = Scene_Skill.new(@status_window.index)
      when 2  # equipment
        $scene = Scene_Equip.new(@status_window.index)
      when 3  # status
        $scene = Scene_Status.new(@status_window.index)
      end
    end
  end
end


Il n'y a que deux-trois lignes changer ^^


Haut
 Profil  
 
Afficher les messages depuis:  Trier par  
Publier un nouveau sujet Répondre au sujet  [ 3 messages ] 

Heures au format UTC + 1 heure [ Heure d’été ]


Qui est en ligne ?

Utilisateurs parcourant actuellement ce forum : Aucun utilisateur inscrit et 2 invités


Vous ne pouvez pas publier de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas insérer de pièces jointes dans ce forum

Rechercher pour:
Sauter vers:  
cron
RPG Creative Forum version 5 ; Tous droits réservés
phpBB Group (Traduit par Xaphos)
Optimisé pour une résolution 1024*728