Menu

Connexion



Retenir ?

Mot de passe oublié ?
Eclipso logo
Merry Christmas !
25/01/2020 21:22:42

Une Princesse sans amour est une Princesse oubliée - Brandobscure

[RGSS2] Berserk

Hermoni

Entraîneur
Hermoni
  • Messages : 400

[RGSS2] Berserk


lun. 19 mai 2014 - 21h31

Oy !
Suis sur (je sais même) que la question aura une réponse rapide mais ça m'soule de pas trouver moi même donc....

C'est quoi la commande exacte pour changer le parametre "Mode berzerk" de la base de donnée pour un character particulier ?
J'en ai besoin pour un système de pouvoir le passer ON ou OFF.


PS : Et si jamais zavez aussi un tuto en fr pour faire une scene menu custom... (bon j'avoue, là c'est juste la flemme de lire en anglais celui que j'ai trouvé XD)

Zouzaka

Elite
Zouzaka
  • Messages : 616

[RGSS2] Berserk


lun. 19 mai 2014 - 21h52

tu fait un appelle de script avec :

$game_actors[X].auto_battle = true

X = ID du hero
et pour le désactiver tu met "false" a la place de "true"

Hermoni

Entraîneur
Hermoni
  • Messages : 400

[RGSS2] Berserk


lun. 19 mai 2014 - 22h37

Du coup, comme on s'le disait sur la chatbox... ça renvoit un "NoMethodOccured" (si j'me foire pas sur l'écriture).
Donc... si quelqu'un sait mieux....^^ (car si j'peux pas changer, ça rend useless ce que j'viens de faire pendant tout mon aprem).

Zouzaka

Elite
Zouzaka
  • Messages : 616

[RGSS2] Berserk


lun. 19 mai 2014 - 23h28

alors voila :
tu ajout ce petit script en dessus de main :

class Game_Actor < Game_Battler
def set_auto_battle(arg)
actor.auto_battle = arg
end
end


et tu fait :
$game_actors[X].set_auto_battle(true)

en appelle de script
X = id du hero
et pour désactiver tu met "false" a la place de "true"
normalement la ca marche

Hermoni

Entraîneur
Hermoni
  • Messages : 400

[RGSS2] Berserk


mar. 20 mai 2014 - 03h12

Zouz franchement.... thanks a lot !^^
C'est impec. Du coup me reste plus que la partie "menu" à faire vu que ça c'est réglé^^ J'viens de tester ça roule impec.

Zouzaka

Elite
Zouzaka
  • Messages : 616

[RGSS2] Berserk


mar. 20 mai 2014 - 09h30

Un Menu ? c'est pas très claire =/
donne moi un peu plus de détails et j'esserai de te faire ca =)

Hermoni

Entraîneur
Hermoni
  • Messages : 400

[RGSS2] Berserk


mar. 20 mai 2014 - 17h40

Bah attend^^ j'vais déjà tenter de m'faire ca moi même histoire de comprendre tout ça. Je dois simplement déjà prendre le temps de lire le tuto (j'ai trouvé celui-ci en cherchant. J'ai survolé mais doit y avoir moyen de faire c'que j'veux avec) que j'avais trouvé et apprendre à faire moi même les fenetres et tout pour en former un mini menu.
(bon si j'galère j'demanderais un coup d'patte^^)

Par contre tant que j'y pense... micro question de plus : En fait j'peux rajouter tout c'que je veux à n'importe quelle classe en rajoutant un autre script et sans toucher le script principal en rajoutant le "class Game_Actor < Game_Battler" (par exemple pour la classe actor biensur) si j'ai bien comprit, mais si c'est une modification d'une fonction existant déjà ? (pas juste un rajout, ça j'sais déjà faire), on peut sans soucis ? Car là j'ai la sale habitude de modifier les scripts de base, sauf que le jour où j'aurais un soucis.... hmm^^

Ssozi

Expert
Ssozi
  • Messages : 1166

[RGSS2] Berserk


mar. 20 mai 2014 - 19h38

Citation de "Zouzaka" :
alors voila :
tu ajout ce petit script en dessus de main :
class Game_Actor < Game_Battler
def set_auto_battle(arg)
actor.auto_battle = arg
end
end


et tu fait :
$game_actors[X].set_auto_battle(true)

en appelle de script
X = id du hero
et pour désactiver tu met "false" a la place de "true"
normalement la ca marche


class Game_Actor
def set_auto_battle(arg)
actor.auto_battle = arg.to_b
end
end
class Game_Interpreter
def auto_battle(*args)
$game_actors(args[0].set_auto_battle(args[1]
end
end

Et là tu fais cet appel de script :
auto_battle(id, true/false)

Je sais, je suis chiant. Zouz' a bien géré, j'aurai sans doutes pas trouver. Mais du coup, j'ai regardé la bête et je l'ai améliorée un petit peu (je pense que Zouz' comprendra où ^^))

Pour répondre à ta micro question, oui et non. Dans le principe, une classe peut être modifiée n'importe où, toutefois faut faire gaffe de ne pas réécrire sans le faire exprès des méthodes déjà existantes, et puis, c'est pas utile de remettre l'héritage (ça peut même être source de bugs ou de lags).



Hermoni

Entraîneur
Hermoni
  • Messages : 400

[RGSS2] Berserk


mar. 20 mai 2014 - 20h16

En fait j'vois pas c'que ca change vraiment tes changements là xD (à part la forme de l'appel au final)

Et sinon... ok pour le reste. Juste que j'me demandais histoire de faire plus propre et d'arrêter de réecrire directement les scripts de base de RM. Car en general, si j'voulais changer un truc, je mettais en commentaire l'ancienne version et faisait les modif (mais bon... voila quoi xD).

Zouzaka

Elite
Zouzaka
  • Messages : 616

[RGSS2] Berserk


mar. 20 mai 2014 - 21h13

Bibi, Merci pour l’amélioration et de l'information sur l’héritage =)
Sinon hermoni pour l'utilité de l'amélioration de bibi on peut dire que pour que ca soit plus stable =)
ensuit moi j'ai commencé a scripter sur VX Ace (je trouve que c'est plus simple) grâce a un tuto sur BilouCorp =) :
http://www.biloucorp.com/creation-dun-shifumi-avec-le-rgss3-16
ensuit j'ai commencé a regarder a lire cette documentation : (que je lis encore de temps en temps x) )
http://www.ruby-doc.org/core-2.1.2/
et enfin je lis les scripts de bases de RM

Hermoni

Entraîneur
Hermoni
  • Messages : 400

[RGSS2] Berserk


mar. 20 mai 2014 - 21h23

Ok ok.
Bah là c'que j'voulais faire en tout cas ça avance. J'ai déjà des bases "générale" sur le fonctionnement des langages (même si j'ai eu du mal à suivre mes cours en 2eme année), ça aide. Et j'm'inspire pas mal des autres scripts (de base ou d'autre personne).

En général mon plus gros problème c'est l'écriture précise de certaines fonctions. Enfin, général. Car après ça dépend comme là^^

J'viens de survoler le tuto BilouCorp, c'est pas si mal expliqué les principes aussi^^

Ssozi

Expert
Ssozi
  • Messages : 1166

[RGSS2] Berserk


mar. 20 mai 2014 - 22h24

De rien Zouz', merci à toi pour l'aide que tu apportes (d'ailleurs tu mérites des points )

Citation de "Zouzaka" :
J'ai commencé a regarder a lire cette documentation : (que je lis encore de temps en temps x) )
http://www.ruby-doc.org/core-2.1.2/

Idem, je la conseille vraiment si tu veux tout savoir!



Zouzaka

Elite
Zouzaka
  • Messages : 616

[RGSS2] Berserk


mer. 21 mai 2014 - 00h32

ah au fait bibi ... c'est quoi le "to_b" ? car il renvoi une erreur ... =/
edit: et ca aussi :

$game_actors(args[0]

ca renvoi une erreur je pense que c'est parce que ta mit des parenthèses a la place de crochets.

Ssozi

Expert
Ssozi
  • Messages : 1166

[RGSS2] Berserk


mer. 21 mai 2014 - 09h28

Enlève le to_b alors, ça transforme un string en booléen, d'où l'erreur. Et oui j'ai fail les parenthèses Merci



Zouzaka

Elite
Zouzaka
  • Messages : 616

[RGSS2] Berserk


mer. 21 mai 2014 - 13h18

Donc ca donne ca :

class Game_Actor
def set_auto_battle(arg)
actor.auto_battle = arg
end
end
class Game_Interpreter
def auto_battle(*args)
$game_actors[args[0]].set_auto_battle(args[1]
end
end