Aller à la page 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
Reprise du message précédent:
Tata Monos -
posté le 23/12/2011 à 15:28:05 (28 messages postés)
| Compte Non utilisé | Citation:
Monkey Patching, c'est un peu la même chose que Monos Patching ? (juste la langue qui change non ?)
=>[]
Merci.
| Suite du sujet:
zou -
posté le 24/12/2011 à 18:39:43 (2197 messages postés)
| | Je cherche a faire des class qui s'additionnent.
Je fais par exemple
1
2
3
4
| a = Machin.new(3)
b = Machin.new(4)
a += b
print a.var #=> 7 |
donc j'ai fais ça
1
2
3
4
5
6
7
8
9
10
11
| class Machin
def initialize(var)
@var = var
end
def +(value)
@var += value.var
end
def var
return @var
end
end |
L'addition fonction que quand je fais a + b et j'aimerais faire a += b
et si je mes la fonction def +=(value) j'ai le droit à un syntaxe error
Comment faire un += svp ?
|
Zeus81 -
posté le 24/12/2011 à 18:50:00 (11071 messages postés)
| | Nom mais a += b c'est juste une abréviation de a = a + b donc tu fais une méthode = avec juste = et une méthode + avec juste +
|
zou -
posté le 24/12/2011 à 19:00:23 (2197 messages postés)
| | Ca ne fonctionne pas une méthode def = ni def +=
ou alors j'ai pas compris ce que tu m'a dis
|
Zeus81 -
posté le 24/12/2011 à 19:17:26 (11071 messages postés)
| | Ah ben oui normal en fait.
1
2
3
4
5
| class Machin
def initialize(var) @var = var end
def +(machin) self.class.new(machin.var + @var) end
def var() @var end
end |
Mais ça te crée un nouvel objet à chaque fois.
Si tu veux pas faut que tu crées une méthode set, a.set(a+b), ou add, a.add(b) et la dedans tu modifies juste ta variable, mais tu peux pas utiliser += de cette manière.
|
zou -
posté le 24/12/2011 à 19:22:56 (2197 messages postés)
| | J'ai trouver l'erreur pour le a = a+ b qui me renvoiait un Integer
il faut faire un return self a la fin de la méthode
Tampis je vais être obligé de faire une méthode add alors.
Merci et joyeux noel
|
Zeus81 -
posté le 24/12/2011 à 19:26:38 (11071 messages postés)
| | J'ai édité. (quinze fois)
|
zou -
posté le 24/12/2011 à 19:39:37 (2197 messages postés)
| | Citation: Mais ça te crée un nouvel objet à chaque fois. |
1
2
3
4
| def +(machin)
@var += machin.var
return self
end |
la ça crée rien de nouveau
Pas bête le self.class.new sinon
|
Zeus81 -
posté le 24/12/2011 à 19:45:32 (11071 messages postés)
| | Sauf que là pour modifier la valeur t'as pas besoin de faire a += b mais juste a + b ce qui est assez insensé, ce pourquoi il est préférable d'appeler cette méthode add ou << si tu préfères, a << b
Ou alors tu fais pas chier et t'utilises juste a.var += b.var
|
zou -
posté le 24/12/2011 à 20:02:07 (2197 messages postés)
| | Ma methode fonctionne pour faire le a = a+b mais #add est mieux c'est sûr
|
Tata Monos -
posté le 24/12/2011 à 20:59:00 (28 messages postés)
| Compte Non utilisé | heum je suis en train de me casser la tête avec le RGSS3 et mes compétence de merde de scripteur.
Comment reproduire ce genre de truc sur ace ?
1
2
3
4
5
6
|
s1 = Vocab::new_game
s2 = Vocab::continue
s3 = Vocab::shutdown
@command_window = Window_Command.new(172, [s1, s2, s3])
|
Beaucoup de chose me semble changé et j'ai du mal à refaire des trucs simple. J'ai déjà galéré pour ouvrir une scène et poser un simple windowskin dessus.
(Merci d'avance)
|
zou -
posté le 24/12/2011 à 22:36:26 (2197 messages postés)
| | Je connais pas ace. Mais regarde dans Scene title tu dois avoir ce que tu cherches.
|
Mack -
posté le 24/12/2011 à 22:46:17 (2310 messages postés)
- - | | Moi aussi j'me suis mis à Ace, j'vais te regarder ça Monos.
Par contre, j'ai moi aussi une question :
Comment on fait pour récupérer une valeur dans la notebox des ennemis ?
En gros, j'voudrais mettre un truc du genre :
1
2
3
| <wait_attack>
50
</wait_attack> |
Et faire que dans Game_Enemy, la variable @wait_attack soit égale à 50.
( Pour acceder à la notebox, c'est :
)
|
( Je prend note de tout les commentaires, même si je n'y répond pas ) |
Tata Monos -
posté le 24/12/2011 à 22:46:22 (28 messages postés)
| Compte Non utilisé | Ba justement zou, c'est ce que je fais, mais sur ce coté la ça me semble bien plus compliqué.
A vrais dire j'arrive à faire les menus de choix mais j'ai l'impression qu'il faut beaucoup plus de code avant. Et je me demandais si il y avait par beaucoup plus simple.
Exemple de ce que j'ai fais la.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
| class Scene_Monos < Scene_Base
def start
super
@bob_window = Window_Monos.new(0, 0)
create_command_window
end
def create_command_window
@command_window = Window_Testchoix.new
@command_window.set_handler(:a, method(:lolo))
@command_window.set_handler(:b, method(:lolo2))
@command_window.set_handler(:c, method(:lolo))
@command_window.set_handler(:d, method(:lolo) )
end
def lolo
$plop=1
#SceneManager.call(Scene_Monos)
return_scene
end
def lolo2
$plop=2
#SceneManager.call(Scene_Monos)
return_scene
end
def refresh
super
end
end
class Window_Testchoix < Window_Command
def initialize
super(0, 0)
update_placement
end
def update_placement
self.x = (Graphics.width - width) / 2
self.y = (Graphics.height * 1.6 - height) / 2
end
def make_command_list
add_command("loic", :a)
add_command("mama", :b)
add_command("sofia", :c)
add_command("love", :d)
end
end
class Window_Monos< Window_Base
def initialize(x, y)
super(x, y, 320, 240)
self.back_opacity = 255
refresh
end
def refresh
case $plop
when 1
self.contents.clear
self.contents.draw_text(0, 0, 544,320,"Test1",0)
when 2
self.contents.clear
self.contents.draw_text(0, 0, 544,320,"Test2",0)
end
end
end |
Je fais des test sur test.
|
zou -
posté le 24/12/2011 à 23:08:24 (2197 messages postés)
| | Dsl je peux rien pour l instant. Il faut que j instale Ace et en plus je suis sur mon galaxy Ace
|
Mack -
posté le 28/12/2011 à 17:34:54 (2310 messages postés)
- - | | Salut,
J'suis en train de travailler sur le "lootage" des objets lors de la mort d'un monstre.
J'ai donc repris le script de RPG Créative pour créer des évents en jeu, et l'ai quelques peut modifier. ( http://rpgcreative.net/rpgmaker/tuto-19-creer-un-evenement-mais-durant-le-jeu.html )
Lais lorsque je veux faire apparaître un évents depuis un autre en Processus //, et bas ça marche pas :
J'me demandais donc à quoi correspond ce message, et comment je pouvais l'éviter ?
|
( Je prend note de tout les commentaires, même si je n'y répond pas ) |
zou -
posté le 28/12/2011 à 18:42:11 (2197 messages postés)
| | Mack, fais voir ta ligne
|
Mack -
posté le 28/12/2011 à 18:50:34 (2310 messages postés)
- - | |
C'est donc que ça merde dans mon "Inserer un script" que voici :
Sauf que exactement la même commande, mais dans un évent en Appuie Touche, bah ça marche =/.
( Apparemment en Autorun, ça marche. J'vais donc faire comme ça, mais j'voudrais quand même bien comprendre pourquoi la ça marche et pas en PP >< )
|
( Je prend note de tout les commentaires, même si je n'y répond pas ) |
zou -
posté le 28/12/2011 à 19:01:19 (2197 messages postés)
| | mes un attendre 1 frame avant ton inserer script
|
Mack -
posté le 28/12/2011 à 19:04:16 (2310 messages postés)
- - | | Marche pas ^^".
( J'peux t'envoyer une démo du truc s'tu veux )
|
( Je prend note de tout les commentaires, même si je n'y répond pas ) |
zou -
posté le 28/12/2011 à 19:22:56 (2197 messages postés)
| | Ah merde
Non merci, déjà que j'avance pas beaucoup sur mon projet
Tu mes un attendre 400 frames et pas de bug pendant 10s
|
Tata Monos -
posté le 30/12/2011 à 10:06:42 (28 messages postés)
| Compte Non utilisé | Aller zou question conne. Comment on mé des gens en script. Heu pardon des zimages.
Support : Ace
Question 1 :
Comment on place une image en script pour le placer par exemple dans un menu ou un truc cutstom fait en script. Et comment on efface aussi l'image. Merci d'avance.
|
Mack -
posté le 30/12/2011 à 10:17:06 (2310 messages postés)
- - | |
1
2
| @sprite = Sprite.new
@sprite.bitmap = Cache.picture("Nom_du_Fichier") |
( Le fichier sera dans Pictures. )
Et pour l'enlever :
( T'as aussi les commande x,y,z, zoom_x, zoom_y ... Jette un oeil sur la doc de XP si tu veux toute les commandes avec des détails. )
( Merde ... J'suis pas Zou ... C'est grave docteur ? )
|
( Je prend note de tout les commentaires, même si je n'y répond pas ) |
Le Docteur -
posté le 30/12/2011 à 10:35:22 (26 messages postés)
| Shiroi no Mahō : Shiroi Honō | Mack a dit:
( Merde ... J'suis pas Zou ... C'est grave docteur ? )
|
Non.
=>[]
|
Yukki Yukki Yukki ! | I'm evil, whatever you think. | Anciennement Le Docteur |
Tata Monos -
posté le 30/12/2011 à 10:57:04 (28 messages postés)
| Compte Non utilisé | Ah merci mack j'étais pas loin hier. \o/
|
Hermoni -
posté le 31/12/2011 à 23:32:19 (279 messages postés)
| Shano | Question surment bien alakon, mais apres avoir passé quasi 1h a me prendre la tete.... je prefere demander, ca m'agace.
Support : VX
Question :
Je cherche a faire qu'a TOUT les combats, a chaque tout un event commun soit lancé. J'ai cherché, si j'me trompe pas pour le lancer c'est
$game_temp.common_event_id = IDEVENT
Ca m'eviterai a l'avenir de chercher 1h la raison d'un bug alors que j'avais oublié de rajouter la page dans le groupe de combat qui le lance a chaque tour (et ca me simplifira pour plus tard vu que c'est sencé etre lancé a tout les combats).
Merci d'avance.
|
Ni da an shindu, doral'dieb an thera. | Aller à la page 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73Index du forum > Entraide > [Scripts] Petites questions connes sur les SCRIPTS!!
|