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:
bubblebug -
posté le 17/08/2011 à 15:54:00 (384 messages postés)
| | Oui, mais la j'utilise le windows skin pour quelque chose et je veu utiliser une autre image pour se script, mais je ne sait pas comment remplacer le windows skin de ce script en image !
| Suite du sujet:
zou -
posté le 18/08/2011 à 01:43:13 (2197 messages postés)
| | w.windowskin = "book"
|
bubblebug -
posté le 18/08/2011 à 18:07:39 (384 messages postés)
| | Ok, merci
EDIT: Cela ne marche pas
|
Zeus81 -
posté le 18/08/2011 à 21:17:25 (11071 messages postés)
| | w.windowskin = RPG::Cache.windowskin("book")
Regarde la doc d'aide de RM, ça aide des fois, ou même tu fais Ctrl+Maj+F directement dans les scripts, tu cherches windowskin et puis tu verras bien comment ça marche...
|
bubblebug -
posté le 18/08/2011 à 21:35:06 (384 messages postés)
| | Oh, i'm sorry ... je ne pense jamais la doc' d'aide rmxp !
Merci, cela marche corectement !
|
Hermoni -
posté le 22/08/2011 à 17:14:16 (279 messages postés)
| Shano | Yop,
Support :RMVX
Question 1 :
Je voulais savoir comment je peux m'y prendre pour faire en sorte que certain sorts utilisent une 2eme source d'energie.
En fait j'ai reussi a creer cette 2eme source (pas encore reglé les gain mais c'pas grave pour ce test) et j'aurai voulu que si le sort et noté comme etant "physique" il se base sur cette 2eme source, sinon sur le mana.
Hors j'ai beau changer c'que j'veux, ca reste toujours a regarder le mana pour savoir si je peux lancer ou non.
C'est bien a changer dans Game_Battler, skill_can_use non?
Me d'mande ou j'me foire parce que meme si je change juste la ligne qui verif si ca demande plus de mana que le mana actuel pour que ca regarde la 2eme energie ca reste bloqué.
|
Ni da an shindu, doral'dieb an thera. |
Tasslehoff -
posté le 31/08/2011 à 22:13:02 (5274 messages postés)
| Disciple de Pythagolf | Support : RMXP
Question :
Hello, est-ce que quelqu'un sais comment accéder dans un script aux commentaires d'un évènement (dont je connais l'id) ?
J'ai vu dans un script :
1
| $game_map.events[event_id].list[i].parameters[0] |
Mais à partir de ça je sais pas comment récupérer le commentaire. J'ai essayé .include?("prout"), en faisant for i in 0...$game_map.events[event_id].list.size avant mais ça ne fonctionne pas, un message me dit que la méthode "include?" n'est pas défini pour "nil:NilClass"
Merci d'avance.
|
~~ |
zou -
posté le 31/08/2011 à 23:59:28 (2197 messages postés)
| | C'est assez simple.
Si tu sais pas où est ton commentaire
1
2
3
4
5
6
| for i in $game_map.events[ID].list # pour toutes les commandes
if i.code == 108 # le code du commentaire
texte = i.parameters[0] # on récupère le contenue du commentaire
break # puis on casse la boucle pour ne pas prendre en compte d'autre commentaire
end
end |
Mais si tu sais où est le commentaire, par exemple au début, tu fais direct
1
| texte = $game_map.events[ID].list[0].parameters[0] |
J'ai l'impression que tu veux savoir qui il y a un mot clef dans ton commentaire
dans ce cas tu fais après :
ou
1
| if texte.include?("prout") |
|
Tasslehoff -
posté le 01/09/2011 à 00:19:52 (5274 messages postés)
| Disciple de Pythagolf | Merci zou, et oui le commentaire sera en première place. ^^
Et pour la seconde partie (regarder si ça correspond au mot clé) je savais déjà, mais merci quand même.
|
~~ |
lebowski -
posté le 02/09/2011 à 22:50:33 (1577 messages postés)
| On va manger... DES CHIPS! | Bon alors petite question conne...
[RM2k3]
J'avais jamais fait de charsets avant (j'en récupérais seulement) et là j'en ai fait mais j'ai ce problème là:
Là j'ai essayé de mettre le fond du même vert que sur les RTP
J'ai essayé fond transparent ça met la même chose en blanc
Donc ma question toute conne: comment on fait pour rendre le fond invisible s'il vous plait?
Merci d'avance^^
|
Silent Word |
bigraph -
posté le 02/09/2011 à 22:53:50 (448 messages postés)
| Hum... | Lors de l’intégration des images avec le gestionnaire de ressources, il faut faire un clic droit sur la couleur de l'image importée que l'on veut rendre transparente, et clic gauche sur la couleur que l'on veut rendre invisible.
|
Non, rien. | Na. | "Le suicide me semble très attirant en ce moment... Et si on suicidait pokéfan ?" : je suis fan officiel du docteur 8-) | J'ai été ban... Pour une connerie de dispute... M'aprendra à être con, tiens. | D'ailleur, en parlant du ban: ça fait un mois jour pour jour aujourd'hui! Et je suis toujours pas déban! WTF? |
lebowski -
posté le 02/09/2011 à 22:56:08 (1577 messages postés)
| On va manger... DES CHIPS! | Aaaaah c'est donc à ça qu'il sert ce fameux gestionnaire des ressources!^^
Donc c'était bel et bien une question très conne xDD
Merci bien^^
|
Silent Word |
bigraph -
posté le 02/09/2011 à 22:58:05 (448 messages postés)
| Hum... | Eh ben, de rien.
|
Non, rien. | Na. | "Le suicide me semble très attirant en ce moment... Et si on suicidait pokéfan ?" : je suis fan officiel du docteur 8-) | J'ai été ban... Pour une connerie de dispute... M'aprendra à être con, tiens. | D'ailleur, en parlant du ban: ça fait un mois jour pour jour aujourd'hui! Et je suis toujours pas déban! WTF? |
zou -
posté le 03/09/2011 à 01:38:45 (2197 messages postés)
| | Est-ce que quelqu un peu changer le nom du topic en remplacant RGSS par Script ?
|
zou -
posté le 03/09/2011 à 11:46:25 (2197 messages postés)
| | Merci
|
yop -
posté le 05/09/2011 à 16:29:01 (296 messages postés)
| | Support : RMXP + AMS (j'espère que Zeus me regarde...)
Question :
Bonjour,
J'ai plusieurs questions (assez liées) qui je crois sont connes. D'abord je sais très bien que c'est réalisable en évent mais il faut des variables, plein de conditions, et j'en veux pas . Si je poste ici c'est car je pense que c'est plus simple.
Faire que :
- héros/évent regarde évent
- héros/évent tourne le dos évent
- héros/évent fais un pas vers évent
- héros/évent fuit évent d'un pas
Et si possible une condition qui vérifie ces actions.
J'espère que c'est pas trop demander.
Merci de votre aide.
|
"Thousands of years ago the old empire had enforced the Pax Morporkia, which had said to the world: 'Do not fight or we will kill you.' The Pax had arisen again, but this time it said: 'If you fight, we'll call in your mortgages. And incidentally, that's my pike you're pointing at me. I paid for that shield you're holding. And take my helmet off when you speak to me, you horrible little debtor.'" ~Terry Pratchett, Feet of Clay |
Tasslehoff -
posté le 05/09/2011 à 22:30:35 (5274 messages postés)
| Disciple de Pythagolf | A rajouter au dessus du script main :
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
98
99
100
101
102
103
104
105
106
107
| class Game_Character
def turn_toward_event(event)
# Get difference in event coordinates
sx = @x - $game_map.events[event].x
sy = @y - $game_map.events[event].y
# If coordinates are equal
if sx == 0 and sy == 0
return
end
# If horizontal distance is longer
if sx.abs > sy.abs
# Turn to the right or left towards player
sx > 0 ? turn_left : turn_right
# If vertical distance is longer
else
# Turn up or down towards player
sy > 0 ? turn_up : turn_down
end
end
def turn_away_from_event(event)
# Get difference in event coordinates
sx = @x - $game_map.events[event].x
sy = @y - $game_map.events[event].y
# If coordinates are equal
if sx == 0 and sy == 0
return
end
# If horizontal distance is longer
if sx.abs > sy.abs
# Turn to the right or left away from player
sx > 0 ? turn_right : turn_left
# If vertical distance is longer
else
# Turn up or down away from player
sy > 0 ? turn_down : turn_up
end
end
def move_toward_event(event)
# Get difference in event coordinates
sx = @x - $game_map.events[event].x
sy = @y - $game_map.events[event].y
# If coordinates are equal
if sx == 0 and sy == 0
return
end
# Get absolute value of difference
abs_sx = sx.abs
abs_sy = sy.abs
# If horizontal and vertical distances are equal
if abs_sx == abs_sy
# Increase one of them randomly by 1
rand(2) == 0 ? abs_sx += 1 : abs_sy += 1
end
# If horizontal distance is longer
if abs_sx > abs_sy
# Move towards player, prioritize left and right directions
sx > 0 ? move_left : move_right
if not moving? and sy != 0
sy > 0 ? move_up : move_down
end
# If vertical distance is longer
else
# Move towards player, prioritize up and down directions
sy > 0 ? move_up : move_down
if not moving? and sx != 0
sx > 0 ? move_left : move_right
end
end
end
def move_away_from_event(event)
# Get difference in event coordinates
sx = @x - $game_map.events[event].x
sy = @y - $game_map.events[event].y
# If coordinates are equal
if sx == 0 and sy == 0
return
end
# Get absolute value of difference
abs_sx = sx.abs
abs_sy = sy.abs
# If horizontal and vertical distances are equal
if abs_sx == abs_sy
# Increase one of them randomly by 1
rand(2) == 0 ? abs_sx += 1 : abs_sy += 1
end
# If horizontal distance is longer
if abs_sx > abs_sy
# Move away from player, prioritize left and right directions
sx > 0 ? move_right : move_left
if not moving? and sy != 0
sy > 0 ? move_down : move_up
end
# If vertical distance is longer
else
# Move away from player, prioritize up and down directions
sy > 0 ? move_down : move_up
if not moving? and sx != 0
sx > 0 ? move_right : move_left
end
end
end
end |
Après dans Déplacer évènement tu fais insérer un script avec une de ces commandes :
turn_toward_event(id_de_l_event)
turn_away_from_event(id_de_l_event)
move_toward_event(id_de_l_event)
move_away_from_event(id_de_l_event)
Par contre j'ai pas compris pour la condition. Tu veux voir si l'action a été effectuée ?
|
~~ |
yop -
posté le 06/09/2011 à 10:37:27 (296 messages postés)
| | Merci beaucoup ! Vraiment génial, c'est vachement sympa ! Je t'oublierais pas dans les crédits.
Avec l'AMS on a même pas besoin de rajouter de code d'ailleurs il n'est pas compatible (j'ai essayé avec et ça n'a pas marché).
Citation: Tu veux voir si l'action a été effectuée ? |
C'est exactement ça
Ce que je voulais dire c'est si :
- héros/évent regarde évent
- héros/évent tourne le dos évent
- héros/évent est à X case de évent
En tout cas je pense que je ne suis pas le seul à qui ces scripts vont servir !
(Des fois je me dis que je devrais vraiment apprendre le ruby... Mais je me contente du basic avec ma calculette !)
|
"Thousands of years ago the old empire had enforced the Pax Morporkia, which had said to the world: 'Do not fight or we will kill you.' The Pax had arisen again, but this time it said: 'If you fight, we'll call in your mortgages. And incidentally, that's my pike you're pointing at me. I paid for that shield you're holding. And take my helmet off when you speak to me, you horrible little debtor.'" ~Terry Pratchett, Feet of Clay |
Tasslehoff -
posté le 06/09/2011 à 16:46:20 (5274 messages postés)
| Disciple de Pythagolf | Citation: Avec l'AMS on a même pas besoin de rajouter de code d'ailleurs il n'est pas compatible (j'ai essayé avec et ça n'a pas marché). |
Euh j'ai pas compris, tu utilise l'AMS ou pas ?
Citation: - héros/évent est à X case de évent |
Distance pour x et y, ou distance générale (x+y) ?
|
~~ |
zou -
posté le 06/09/2011 à 18:20:49 (2197 messages postés)
| | Citation: Euh j'ai pas compris, tu utilise l'AMS ou pas ? |
Ce que je ne comprends surtout pas c'est pourquoi ne pas utiliser les commandes de Zeus qui font la même chose et qui sont déjà dans le script ???
|
yop -
posté le 06/09/2011 à 20:39:49 (296 messages postés)
| | Citation: Ce que je ne comprends surtout pas c'est pourquoi ne pas utiliser les commandes de Zeus qui font la même chose et qui sont déjà dans le script ??? |
C'est ce que j'ai fais ! Ce que je demandais c'est juste ce qu'il faut écrire dans la commande car malheureusement Zeus a oublié de le préciser.
C'est effectivement déjà dans le script comme j'ai essayé de le dire plus haut (très mal).
J'ai essayé ces commandes sans le script que Tasslehoff m'a donné et ça à marché. Par contre quand je l'ai mis ça à buggé. J'en déduit que ce script est incompatible à l'AMS (mais de toutes façons on en a pas besoin). Je sais que ça ne servais à rien je voulais juste voir ce que ça ferais. Et donc je l'ai dit pour pas que quelqu'un qui à l'AMS ajoute ce script.
Citation: Distance pour x et y, ou distance générale (x+y) ? |
Les 2 s'il te plait. Enfin le premier mène au second. Si je ne me trompe pas, on vérifie d'abord qu'aucune distance n'est négative sinon on la multiplie par (-1) donc soit avec un if soit en les multipliant par leur carré puis leur racine (ou l'inverse). Pour finir il suffit de les additionner.
Et j'ai une autre question : comment faire subir à une variable plusieurs opération (une série de calcul). Avec les évents on doit les faire un par un, j'espère qu'il existe un moyen plus rapide de faire ça.
|
"Thousands of years ago the old empire had enforced the Pax Morporkia, which had said to the world: 'Do not fight or we will kill you.' The Pax had arisen again, but this time it said: 'If you fight, we'll call in your mortgages. And incidentally, that's my pike you're pointing at me. I paid for that shield you're holding. And take my helmet off when you speak to me, you horrible little debtor.'" ~Terry Pratchett, Feet of Clay |
Tasslehoff -
posté le 06/09/2011 à 21:18:43 (5274 messages postés)
| Disciple de Pythagolf | Citation: Les 2 s'il te plait. Enfin le premier mène au second. Si je ne me trompe pas, on vérifie d'abord qu'aucune distance n'est négative sinon on la multiplie par (-1) donc soit avec un if soit en les multipliant par leur carré puis leur racine (ou l'inverse). Pour finir il suffit de les additionner. |
Tkt, je gère.
Citation: comment faire subir à une variable plusieurs opération (une série de calcul). Avec les évents on doit les faire un par un, j'espère qu'il existe un moyen plus rapide de faire ça. |
Insertion de script :
1
| $game_variables[id_de_la_variable] = 10 * 3 + 50 / 60 + (3 * 4) |
Edit : Rajoute ça au dessus de main. Tu peux le mettre à la suite de l'autre si tu veux.
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
98
99
100
101
102
103
104
105
106
107
| class Interpreter
def looking_at_event?(event, other_event)
if event == 0
event = $game_player
else
event = $game_map.events[event]
end
if other_event == 0
other_event = $game_player
else
other_event = $game_map.events[other_event]
end
# Get difference in event coordinates
dx = event.x - other_event.x
dy = event.y - other_event.y
# If coordinates are equal
if dx == 0 and dy == 0
return true
end
# If horizontal distance is longer
if dx.abs > dy.abs
if dy > 0
return (event.direction == 4)
else
return (event.direction == 6)
end
# If vertical distance is longer
else
if dy > 0
return (event.direction == 8)
else
return (event.direction == 2)
end
end
end
def looking_away_from_event?(event, other_event)
if event == 0
event = $game_player
else
event = $game_map.events[event]
end
if other_event == 0
other_event = $game_player
else
other_event = $game_map.events[other_event]
end
# Get difference in event coordinates
dx = event.x - other_event.x
dy = event.y - other_event.y
# If coordinates are equal
if dx == 0 and dy == 0
return true
end
# If horizontal distance is longer
if dx.abs > dy.abs
if dy > 0
return (event.direction == 6)
else
return (event.direction == 4)
end
# If vertical distance is longer
else
if dy > 0
return (event.direction == 2)
else
return (event.direction == 8)
end
end
end
def distance_to_event?(event, other_event, distance, type)
if event == 0
event = $game_player
else
event = $game_map.events[event]
end
if other_event == 0
other_event = $game_player
else
other_event = $game_map.events[other_event]
end
# Get difference in event coordinates
dx = event.x - other_event.x
dy = event.y - other_event.y
dist = dx.abs + dy.abs
case type
when 0
return (dist == distance)
when 1
return (dist < distance)
when 2
return (dist > distance)
end
end
end |
Puis dans condition tu fais insérer script avec :
looking_at_event?(A, B)
looking_away_from_event?(A, B)
A = id de l'event qui regarde
B = id de l'event regardé
distance_to_event?(A, B, C, D)
A = id du premier event
B = id du second event
C = distance
D = Condition. Si tu mets 0 alors il regarde si la distance est égale à celle spécifiée. Si tu mets 1 alors il regarde si la distance est inférieure à celle spécifiée. Si tu mets 2 alors il regarde si la distance est supérieure à celle spécifiée. Tu utiliseras probablement 1.
|
~~ |
yop -
posté le 07/09/2011 à 16:08:33 (296 messages postés)
| | Ah super celui-la est compatible (et fonctionne !). Merci beaucoup.
Euh un seul truc : si c'est le héros je dois mettre quoi comme id ??
Encore merci pour toute ton aide.
|
"Thousands of years ago the old empire had enforced the Pax Morporkia, which had said to the world: 'Do not fight or we will kill you.' The Pax had arisen again, but this time it said: 'If you fight, we'll call in your mortgages. And incidentally, that's my pike you're pointing at me. I paid for that shield you're holding. And take my helmet off when you speak to me, you horrible little debtor.'" ~Terry Pratchett, Feet of Clay |
Tasslehoff -
posté le 07/09/2011 à 18:48:47 (5274 messages postés)
| Disciple de Pythagolf | Oups j'ai oublié de précisé que c'est 0 pour le héros.
|
~~ |
yop -
posté le 07/09/2011 à 20:34:28 (296 messages postés)
| | Merci ! Super ! Merci beaucoup
Edit :
Encore un question : que doit on mettre comme id pour "cet évent" ?
RE-EDIT :
Je crois qu'il y a un problème dans l'AMS : on ne peut pas courir tout en allant en diagonale haut-gauche ou bas-droite.
Est-ce normal ?!
|
"Thousands of years ago the old empire had enforced the Pax Morporkia, which had said to the world: 'Do not fight or we will kill you.' The Pax had arisen again, but this time it said: 'If you fight, we'll call in your mortgages. And incidentally, that's my pike you're pointing at me. I paid for that shield you're holding. And take my helmet off when you speak to me, you horrible little debtor.'" ~Terry Pratchett, Feet of Clay | 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!!
|