Invité
| Sujet: Maréria+Slots Mer 6 Aoû 2008 - 10:31 | |
| Bonjour ^^ Voila j'ai un script permettant de faire un systeme de Matéria a la FF7, le seul problème c'est qu'on ne peut équper q' UNE seule matéria ( elle se place dans accesoire) Alors que moi j'en veu 10 :depression: Donc j'ai déssider d'utliser le script pour augmenter les accésoires (de Lesims100), Le script de Lesims100 est OK , les réglage sont bon mais c'est l'autre script qui me fait *****, il faudrai rajouter la possibilité d'utiliser les accésoires que j'ai rajouté, c'est a dire de 5 a 14 ( ID ) et pas juste le 5... Voila je met un lien vers les deux script ^^ - Matéria - EquipementLe script equipement j'ai rajouté 10 slots: matéria1, matéria2..... Merci d'avance ^^ |
|
Voyageur Lv.10
Age : 35 Inscrit le : 07/07/2008 Messages : 498
| Sujet: Re: Maréria+Slots Ven 8 Aoû 2008 - 0:47 | |
| La réponse et toute simple : Dans ce sript : - Spoiler:
- Code:
-
# Avoir des accessoires permettant d'utiliser des competences
# Un accessoire, une fois equipé permet au porteur d'utiliser certaines competences. # Le nombre de competence augmente plus le porteur combat avec l'accessoire equipé. # Une fois déséquipé, il perd l'usage des competences. # Les competences " debloqué " par un porteur sont transmise au second porteur. # Ces accessoires sont des exemplaires unique. # Pour en avoir plusieurs identiques, il faut en créer plusieurs dans la base de donnée. # Chacun devra alors etre porté pour debloqué toute les competences qu'il contient. ################################################################################ module Cskill # Ce tableau stocke l'ID de tout les " cristals " ID_CRISTAL = [31] # Ce tableau contient les competences qu'apprend chaque " cristals " # A l'interieure des crochets, chaque blocs de crochets represente un cristal # dont l'ordre correspond à celui du tableau precedent !! SKILL = [[59, 60, 61, 62]] # Exp gagné par combat remporter ( si equipé ) EXP = 5 # reference = ID du héros de labase de donnée dont les stats servent de base à la courbe d'exp du " cristal " REF = 10 # chaque type correspond à une courbe de stats du héros de reference # 1 = hp / 2 = mp / 3 = force / 4 = defense / 5 = intelligence / 6 = agilité # distribuer vos cristaux entre ces 6 types d'evolutions TYPE1 = [31] TYPE2 = [33] TYPE3 = [34] TYPE4 = [35] TYPE5 = [36] TYPE6 = [37] end ################################################################################ class Window_Status < Window_Base def draw_equipments(x, y) self.contents.font.color = system_color self.contents.draw_text(x, y, 120, WLH, Vocab::equip) for i in 0..4 draw_item_name(@actor.equips[i], x + 16, y + WLH * (i + 1)) end acc = @actor.equips[5,6,7,8,9,10,11,12,13,14].id if Cskill::ID_CRISTAL.include?(acc) test = $cristal_skill[acc] lv = 0 #### ref = $data_actors[Cskill::REF] if Cskill::TYPE1.include?(acc) type = 0 elsif Cskill::TYPE2.include?(acc) type = 1 elsif Cskill::TYPE3.include?(acc) type = 2 elsif Cskill::TYPE4.include?(acc) type = 3 elsif Cskill::TYPE5.include?(acc) type = 4 elsif Cskill::TYPE6.include?(acc) type = 5 end need_exp = ref.parameters[type, (lv + 1)] while test >= need_exp test -= need_exp lv += 1 need_exp = ref.parameters[type, (lv + 1)] end #### num = Cskill::ID_CRISTAL.index(acc) max = Cskill::SKILL[num].size if Cskill::SKILL[num][0] != nil lv += 1 end self.contents.draw_text( x + 16, y + WLH * 5 + 20, 150, 32, "Apprentissage : ") if lv < max self.contents.draw_text(x + 16 + 150, y + WLH * 5 + 20, 100, 32, lv.to_s + " / " + max.to_s) else self.contents.draw_text(x + 16 + 150, y + WLH * 5 + 20, 100, 32, "MAX") end end end end ################################################################################ class Scene_Equip < Scene_Base def update_item_selection if Input.trigger?(Input::B) Sound.play_cancel @equip_window.active = true @item_window.active = false @item_window.index = -1 elsif Input.trigger?(Input::C) Sound.play_equip last_item = @actor.equips[@equip_window.index] @actor.change_equip(@equip_window.index, @item_window.item) if Cskill::ID_CRISTAL.include?(last_item.id) num = Cskill::ID_CRISTAL.index(last_item.id) for x in 0..(Cskill::SKILL[num].size - 1) id = Cskill::SKILL[num][x] if id != nil # @actor.forget_skill(id) end # end end if @equip_window.index == 5 item_id = @item_window.item.id if Cskill::ID_CRISTAL.include?(item_id) test = $cristal_skill[item_id] lv = 0 #### ref = $data_actors[Cskill::REF] if Cskill::TYPE1.include?(item_id) type = 0 elsif Cskill::TYPE2.include?(item_id) type = 1 elsif Cskill::TYPE3.include?(item_id) type = 2 elsif Cskill::TYPE4.include?(item_id) type = 3 elsif Cskill::TYPE5.include?(item_id) type = 4 elsif Cskill::TYPE6.include?(item_id) type = 5 end need_exp = ref.parameters[type, (lv + 1)] while test >= need_exp test -= need_exp lv += 1 need_exp = ref.parameters[type, (lv + 1)] end #### for i in 0..lv num = Cskill::ID_CRISTAL.index(item_id) unless i >= Cskill::SKILL[num].size skill_id = Cskill::SKILL[num][i] if skill_id != nil # @actor.learn_skill(skill_id) end # end end end end @equip_window.active = true @item_window.active = false @item_window.index = -10 @equip_window.refresh for item_window in @item_windows item_window.refresh end end end end
A la ligne 141 il y a marquer : @item_window.index = -1 ci tu rajoute un 0 a la fin tu aura 10 matéria est ainsi dessuite. Voila le résultat : A suivre... |
|
Invité
| Sujet: Re: Maréria+Slots Ven 8 Aoû 2008 - 2:21 | |
| Maintenant t'as compris que sa n'a rien a voir XD |
|
Ex-Admin-Script
Age : 42 Inscrit le : 26/05/2008 Messages : 2360
| Sujet: Re: Maréria+Slots Ven 8 Aoû 2008 - 2:30 | |
| - Code:
-
# Ce tableau stocke l'ID de tout les " cristals " ID_CRISTAL = [31,34,33] # Ce tableau contient les competences qu'apprend chaque " cristals " # A l'interieure des crochets, chaque blocs de crochets represente un cristal # dont l'ordre correspond à celui du tableau precedent !! SKILL = [[59, 60, 61, 62],[59, 60, 61, 62],[59, 60, 61, 62]] # Exp gagné par combat remporter ( si equipé ) EXP = 5 # reference = ID du héros de labase de donnée dont les stats servent de base à la courbe d'exp du " cristal " REF = 10 # chaque type correspond à une courbe de stats du héros de reference # 1 = hp / 2 = mp / 3 = force / 4 = defense / 5 = intelligence / 6 = agilité # distribuer vos cristaux entre ces 6 types d'evolutions TYPE1 = [31] #... Ce code du début fait la différence entre les cristaux. La structure de mon jeu ne permet pas de le tester. D'après ce que j'ai compris de la surcharge de Scene_Equip, il ajoute une slot par tableau que tu as dans SKILL. Donc regarde ça et donne m'en des nouvelles. Si ça marche tant mieux, sinon, je regarderai plus en détail. |
|
Voyageur Lv.10
Age : 35 Inscrit le : 07/07/2008 Messages : 498
| Sujet: Re: Maréria+Slots Ven 8 Aoû 2008 - 2:32 | |
| Merci a toi ^^.
Je l'avais moi aussi remarquer mais un truck cloche c'est que les compétence marche pas ^^ j'ai du faire un truck qui faut pas XD ^^. |
|
Invité
| Sujet: Re: Maréria+Slots Mer 19 Nov 2008 - 12:23 | |
| J'aimerai relancer le suject, j'ai le méme soucie et les aide proposer ne foctionne pas. |
|
Prêtre Lv13
Age : 30 Inscrit le : 11/10/2008 Messages : 801
| Sujet: Re: Maréria+Slots Mer 19 Nov 2008 - 13:15 | |
| oulala le nécropost o_o pris pour pas que les modo le vois |
|
Invité
| Sujet: Re: Maréria+Slots Mer 19 Nov 2008 - 13:21 | |
| Ouai mes je fait quoi je reporste pour demander la méme chose XD dans tout les cas sa revien au méme. |
|