Bienvenue visiteur !
|
Statistiques
Liste des membres
Contact
Mentions légales
717 connectés actuellement
29440929 visiteurs depuis l'ouverture
7007 visiteurs aujourd'hui
Partenaires
Tous nos partenaires
Devenir partenaire
|
Sadori-ookami -
posté le 03/06/2013 à 22:48:51 (37 messages postés)
| | Domaine concerné: script Logiciel utilisé: RPG Maker VX Bonsoir j'ai besoin d'un scripteur pour m'aider à décripter ce script que j'ai trouvé sur un site anglais.
La langue ne me gêne pas, c'est bien le script en lui même ...
http://www.rpgmakervxace.net/topic/385-custom-equipment-slots/
Voilà le lien et merci d'avance !
|
arttroy -
posté le 04/06/2013 à 09:46:37 (2394 messages postés)
| Just working | Ben rien de très complexe en fait, ce script sert à rajouter des slots d'équipement à ceux qui existent d'origine dans la BDD à savoir :
arme [0]
bouclier [1]
casque [2]
armure [3]
accessoire [4]
Tout les slots que tu définira avec un nombre supérieur ou égal à [5] permettra de créer un slot supplémentaire auquel tu pourras assigner un nouvel élément d'équipement (soit un supplémentaire soit tu peut carrément créer un nouveau type d'équipement).
Donc ici :
1
2
3
4
5
6
7
8
9
10
| module Extra_Slots
Slots = []
# Edit here to add new slot types
# Slots[armour_type_id] = "name"
# I know it is named in the database but I don't believe you can access
# that name through Vocab
Slots[7] = "Spell Tomes"
end |
Tu rajoutes ce que tu veux par exemple je veux que mon perso puisse lancer des kunais ou des étoiles je rajoute :
Ensuite dans cette partie là :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| class Game_Actor < Game_Battler
#--------------------------------------------------------------------------
# ● Rewrites equip_slots
#--------------------------------------------------------------------------
# Edit here to change what slots are available to your characters
# 0 - Weapon
# 1 - Shield
# 2 - Head
# 3 - Body
# 4 - Accessory
# 5+ a custom slot
def equip_slots
return [0,0,2,3,4,4,4,7] if dual_wield?
return [0,1,2,3,4,4,4,7]
end
end |
Je modifie le def equip_slots en remplaçant par :
1
2
3
4
| def equip_slots
return [0,0,2,3,4,4,4,7,8] if dual_wield?
return [0,1,2,3,4,4,4,7,8]
end |
Et voilà j'ai rajouté une sorte d'équipement !
J'espère que ça t'aidera à avancer, en tous cas tu as la bonne méthode, tu essaie d'analyser comment fonctionne le script c'est déjà une bonne chose. Bon courage à toi !
|
Anti-inconstructivité / Pétition pour que le mot making soit inscrit dans le dictionnaire ? |
Sadori-ookami -
posté le 04/06/2013 à 17:19:28 (37 messages postés)
| | Ouais ca doit être mon esprit matheux xD
Hors de question d'utiliser un truc sans comprendre
Ok ton explication est très claire!
Mais ce script là je doit le rajouter au dessus de main ou il existe déja dans mon éditeur ?
|
arttroy -
posté le 04/06/2013 à 19:19:49 (2394 messages postés)
| Just working | Non non à rajouter au dessus de main. En fait les parties où tu as ça :
1
2
3
4
5
6
7
8
9
10
11
12
| class Window_EquipSlot < Window_Selectable
#--------------------------------------------------------------------------
# ● Rewrites slot_name
#--------------------------------------------------------------------------
def slot_name(index)
if @actor.equip_slots[index] >= 5
Extra_Slots::Slots[@actor.equip_slots[index]]
else
@actor ? Vocab::etype(@actor.equip_slots[index]) : ""
end
end
end |
Réécrivent (ou si tu préfère écrasent) la method "def slot_name(index)" de la class Window_EquipSlot. (En gros si tu regarde cette class dans les script d'origine tu trouveras bien la method "def slot_name(index)")
D'ailleurs l'auteur te le dis en commentaire :
Citation:
Quand tu as ça :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
| class Scene_Equip < Scene_MenuBase
#--------------------------------------------------------------------------
# ● Aliases create_slot_window
#--------------------------------------------------------------------------
alias custom_slots_create_slot_window create_slot_window
def create_slot_window
custom_slots_create_slot_window
@slot_window.create_contents
@slot_window.refresh
end
#--------------------------------------------------------------------------
# ● Aliases on_actor_change
#--------------------------------------------------------------------------
alias custom_slots_on_actor_change on_actor_change
def on_actor_change
custom_slots_on_actor_change
@slot_window.create_contents
@slot_window.refresh
end
end |
Tu peux remarquer les "alias", ceux ci constituent un rajout à la method d'origine (ici tu as "create slot_window" et "on_actor_change") d'où la synthaxe un peu répétitive en début de method.
en fait tu dois décomposer ça en trois parties
alias custom_slots_on_actor_changeon_actor_change
Et ensuite tu redéfinis bêtement ta method... du coup celle-ci a non seulement ses caractéristiques d'origine mais en plus elle utilise le rajout effectué grâce à l'alias.
|
Anti-inconstructivité / Pétition pour que le mot making soit inscrit dans le dictionnaire ? |
Sadori-ookami -
posté le 04/06/2013 à 21:44:06 (37 messages postés)
| | Le script me signale une erreur à la ligne suivante :
class Scene_Equip < Scene_MenuBase
|
arttroy -
posté le 04/06/2013 à 21:53:58 (2394 messages postés)
| Just working | Erf C'est un script pour Vx Ace pas pour Vx... Problème de compatibilité... Vx c'est du rgss2, Ace c'est du rgss3 donc des versions différentes du ruby...
|
Anti-inconstructivité / Pétition pour que le mot making soit inscrit dans le dictionnaire ? |
Sadori-ookami -
posté le 05/06/2013 à 17:11:22 (37 messages postés)
| | Ah ok!
Bon bah dommage
merci du coup de pouce en tout cas !
eTt sur VX pas moyen de modifier son equipement ?
|
arttroy -
posté le 05/06/2013 à 17:24:14 (2394 messages postés)
| Just working | Ben je n'ai pas la version de Vx mais sache qu'une fois que tu commence à toucher au ruby tout devient possible (bon moi j'ai reçu un énorme coup de main pour tout apprendre, j'ai un prof particulier...).
Recréer complètement le menu de base à été ma première tâche, parce qu'on m'a conseillé de commencer par là pour apprendre les bases (affichage d'une image, positionnement, compteurs, création de variables...). Si tu veux j'ai recréé via les scripts tout ce que j'avais fait grâce aux events quand j'ai débuté sur RM il y a un peu plus d'un an maintenant...
Si tu veux jeter un oeil à l'avancement actuel de l'histoire, va voir dans les projets avancés, Hidden World : Chase after memory (c'est mon projet) et dis toi que quand j'ai commencé je ne savais même pas comment on faisait un screen... Tout ce que j'ai appris, ça vient d'Oniro
En tout cas content de t'avoir été utile
Si tu ne connais pas, il y a l'équivalent du site que tu as mis en link pour vx, j'y ai vu pas mal de scripts... Si tu avais Ace ou Xp je pourrais t'aider (et encore rien n'est sûr) mais là...
|
Anti-inconstructivité / Pétition pour que le mot making soit inscrit dans le dictionnaire ? | Index du forum > Entraide > [RPG Maker VX] [RPG Maker VX] Script equipement
|
|
|