Night.png);">
Apprendre


Vous êtes
nouveau sur
Oniromancie?

Visite guidée
du site


Découvrir
RPG Maker

RM 95
RM 2000/2003
RM XP
RM VX/VX Ace
RM MV/MZ

Apprendre
RPG Maker

Tutoriels
Guides
Making-of

Dans le
Forum

Section Entraide

Tutos: Checklist de la composition (...) / Sorties: Dread Mac Farlane - episode 8 / Sorties: Dread Mac Farlane - episode 7 / Jeux: Ce qui vit Dessous / News: Quoi de neuf sur Oniromancie (...) / Chat

Bienvenue
visiteur !




publicité RPG Maker!

Statistiques

Liste des
membres


Contact

Mentions légales

419 connectés actuellement

29380147 visiteurs
depuis l'ouverture

9514 visiteurs
aujourd'hui



Barre de séparation

Partenaires

Indiexpo

Akademiya RPG Maker

Blog Alioune Fall

Fairy Tail Constellations

Lunae - le bazar d'Emz0

Planète Glutko

Leo-Games

Le Temple de Valor

Zarok

Tous nos partenaires

Devenir
partenaire



forums

Index du forum > Entraide > [Scripts] Petites questions connes sur les SCRIPTS!!

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:

cortez - posté le 29/01/2014 à 09:08:48 (523 messages postés)

❤ 0

Je viens de faire un essai, et je pense que sa fonctionne, je
suppose car je me rend compte que je ne peux pas déplacer 2
évent pour les intervertir de place. Je pensais me servir du
check_page_match pour enregistrer l'id de l'event sous le héro
(qui sert de curseur) et aussi celle de l'évent situé à sa gauche /
droite / haut / bas pour permettre des permutations dans les 4
directions, lorsque je me suis rendu compte que ton script
n'intègre pas cette commande...

Je me retrouve à demander encore de l'aide, mais cette fois-ci
tu es libre de me faire le mini-jeu entièrement en script si tu trouve
que la commande qu'il me manque est plus compliquée à faire que
ce mini-jeu. (MP moi pour avoir plus de détail sur le mini-jeu.)


Suite du sujet:

Estheone - posté le 29/01/2014 à 10:17:33 (312 messages postés)

❤ 0

Faire ce mini-jeu entièrement en script c'est minimum une grosse journée de boulot, honnêtement j'ai pas le courage. :D

Edit : je viens de comprendre ton problème laisse-moi quelques minutes. ^^

Portion de code : Tout sélectionner

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
class Game_Event < Game_Character
  def page_index
    return @event.pages.index(@page)
  end
end
 
class Interpreter
  def command_209
    character = $game_map.events[$game_variables[1]] || get_character(@parameters[0])
    if character == nil
      return true
    end
    character.force_move_route(@parameters[1])
    return true
  end
  def save_event_offset(off_x, off_y)
    nx = $game_map.events[@event_id].x + off_x
    ny = $game_map.events[@event_id].y + off_y
    ev = check_event(nx, ny)
    save_event(ev.id) if ev
  end
  def save_event_xy(nx, ny)
    ev = check_event(nx, ny)
    save_event(ev.id) if ev
  end
  def save_event(ev_id)
    $game_variables[1] = ev_id
  end
  def check_page_match(off_x, off_y)
    nx = $game_map.events[@event_id].x + off_x
    ny = $game_map.events[@event_id].y + off_y
    ev = check_event(nx, ny)
    return ev ? event_page_match?(ev, $game_map.events[@event_id]) : false
  end
  def check_event(nx, ny)
    for event in $game_map.events.values
      if event.x == nx and event.y == ny
        return event
      end
    end
    return nil
  end  
  def event_page_match?(event1, event2)
    return (event1.page_index == event2.page_index)
  end
end


Voilà j'ai modifié le fonctionnement, la sauvegarde de l'événement n'est plus automatique mais manuelle et peut être faite de 2 façons :
- save_event_offset(off_x, off_y) : sauvegarde l'event dont les coordonnées sont à off_x et off_y de l'event à partir duquel cette commande est appelée (par exemple save_event_offset(1, 0) sauvegarde l'event à droite, avec save_event_offset(0, 0) l'event principal se sauvegarde lui-même.
- save_event_xy(nx, ny) : sauvegarde l'event de coordonnées nx et ny

Petit exemple pour intervertir l'événement principal avec un autre à sa droite.
- insérer script : save_event_offset(1, 0)
- déplacer événement : un pas vers la gauche
- insérer script : save_event_offset(0, 0)
- déplacer événement : un pas vers la droite

J'espère que ça couvre tous les cas possibles de ton mini-jeu, j'ai pas vraiment saisi comment il fonctionne.

Wandering Souls : Jeu complet / Topic sur Oniro


Joke - posté le 29/01/2014 à 11:54:01 (5089 messages postés)

❤ 0

Bilouteux fou

Sinon, au lieu de contrôler si la page active est en commun, il y avait une technique tout évent simple qui consistait à vérifier si la direction est commune, si tu n'as que quatre couleurs. (Le sprite change de couleur selon sa direction, et deux sprites de même couleur regardent dans la même direction.)

J'ai utilisé cette méthode pour programmer le jeu de la vie sous RM2003, en distinguant les boules jaunes/rouge/vert/bleu comme dans le modèle légendé. (J'aurais pu me passer de colorer les "cellules" mais c'est plus fun comme ça).

biloumaster.fr, mon joli site ouèb tout bô tout frai !


Chaös17 - posté le 02/02/2014 à 20:24:45 (868 messages postés)

❤ 0

Salut,

Support : rpg maker Vx Ace (résolu par Dyeel)

Question : j'essaie de récupérer le play_time d'une sauvegarde et d'afficher ce dernier via un event, mais je n'arrive pas à l'afficher.

Portion de code : Tout sélectionner

1
2
$Tsav0 = DataManager.load_header(0)[:playtime_s]
draw_text(0, 0, 12, line_height, header[:playtime_s], 0)



Blog of Chaos17


Berka - posté le 03/02/2014 à 17:33:20 (493 messages postés)

❤ 0

planchant sur un script

Hello

Tu le sors où l'objet header de ta deuxième ligne ? et pourquoi n'utilises-tu pas l'objet $Tsav0 ?
C'est là que tu fais une erreur.

Tu devrais faire :

Portion de code : Tout sélectionner

1
2
$Tsav0 = DataManager.load_header(0)[:playtime_s]
draw_text(0, 0, 12, line_height, $Tsav0, 0)


ou

Portion de code : Tout sélectionner

1
2
header = DataManager.load_header(0)
draw_text(0, 0, 12, line_height, header[:playtime_s], 0)



Dans le cas 1, $Tsav0 est une variable globale contenant une valeur d'un hash retourné par DataManager.load_header(0) et identifié par la clé :*playtime_s.

Dans le cas 2, header est un hash. Et tu n'auras accès à la valeur que tu recherche qu'en spécifiant une clé :*playtime_s dans ta deuxième ligne.

Bonne journée,
Berka

ps: La classe Hash

Twitter: Pensées politiques et juridiques. Réflexions informatiques


Chaös17 - posté le 03/02/2014 à 21:09:50 (868 messages postés)

❤ 0

Salut,

Citation:

Tu le sors où l'objet header de ta deuxième ligne ? et pourquoi n'utilises-tu pas l'objet $Tsav0 ?


Je suis encore novice en la matière, désolé.

Portion de code : Tout sélectionner

1
2
$Tsav0 = DataManager.load_header(0)[:playtime_s]
draw_text(0, 0, 12, line_height, $Tsav0, 0)



Portion de code : Tout sélectionner

1
2
p header = DataManager.load_header(0)
p draw_text(0, 0, 12, line_height, header[:playtime_s], 0)



Dans les deux solution, le playtime est ben récupéré, je l'ai vu dans la console, mais il semble que ça coince sur le draw text parce que j'ai eu ce bug avec les deux codes.

image

J'ai tenté de cherché "line_height" dans l'aide rpg maker mais j'ai rien trouvé dessus.

Blog of Chaos17


Nukidoudi - posté le 03/02/2014 à 21:16:35 (733 messages postés) -

❤ 0

yo

line_height est une méthode de Window.

https://xvw.lol


Chaös17 - posté le 03/02/2014 à 21:22:04 (868 messages postés)

❤ 0

Nukidoudi a dit:


line_height est une méthode de Window.


Normal alors que ça ne marche pas d'afficher juste le texte si j'ai pas de window.
J'ai tenté de mettre un chiffre à la place ou encore l'enlever mais Rm me dis alors ceci :

image

C'est donc pas possible que Rm m'affiche juste du texte via cette commande... :barbu

Blog of Chaos17


Siegfried - posté le 03/02/2014 à 21:33:43 (228 messages postés)

❤ 0

Tu lances une méthode d'affichage de texte dans une commande événement ? oO


Nukidoudi - posté le 03/02/2014 à 21:36:00 (733 messages postés) -

❤ 0

yo

Draw text fonctionne sur les bitmaps.

https://xvw.lol


Chaös17 - posté le 03/02/2014 à 22:18:59 (868 messages postés)

❤ 0

J'ai essayé de me dédrouiller avec ta suggestion, Nuki. :goutte

image

image

Blog of Chaos17


Dyeel - posté le 03/02/2014 à 22:36:38 (200 messages postés)

❤ 0

Il faut appliquer draw_text directement au bitmap.

Portion de code : Tout sélectionner

1
2
3
$test = Sprite.new
$test.bitmap = Bitmap.new(640,480)
$test.bitmap.draw_text(50,50,120,30,"holala")



Attention à ne pas mettre $test à la fois en sprite et en chaîne de caractères dans le draw_text. Fais une autre variable pour ta chaîne.


Berka - posté le 03/02/2014 à 22:37:56 (493 messages postés)

❤ 0

planchant sur un script

Ici, tu instancies à $test un sprite, puis un hash, puis tu tentes d'accéder à une méthode de sprite par test (qui est, alors un hash).
Et puis il faut que tu initialises l'attribut bitmap de sprite par sprite.bitmap = Bitmap.new(width, height)

Donc:

Portion de code : Tout sélectionner

1
2
3
4
5
$sprite = Sprite.new
text = DataManager.load_header(0)[:playtime_s]
$sprite.bitmap = Bitmap.new(100, 24)
line_height = 16
$sprite.bitmap.draw_text(0, 0, 12, line_height, text, 0)



Twitter: Pensées politiques et juridiques. Réflexions informatiques


Chaös17 - posté le 03/02/2014 à 22:57:05 (868 messages postés)

❤ 0

@ Dyeel : très bonne idée de m'avoir sugérer d'utiliser une variable, j'ai pu afficher mon heure de manière décomposé en plus que ça marche! http://puu.sh/6IX38.png

@Berka : merci, ton code marche aussi en tout cas pour l'affichage car après le chiffre montrer n'est pas le bon. Pourtant, j'ai repris le même slot de save.
http://puu.sh/6IX17.png

Merci à tous pour votre aide :joint

Blog of Chaos17


Nukidoudi - posté le 03/02/2014 à 22:57:20 (733 messages postés) -

❤ 0

yo

Tu bosses sur quoi avec JRuby Berka?

https://xvw.lol


Siegfried - posté le 04/02/2014 à 01:06:16 (228 messages postés)

❤ 0

Nukidoudi a dit:


Draw text fonctionne sur les bitmaps.



Je sais. Je n'avais pas compris qu'il avait créé un Bitmap. Le message d'erreur montrait qu'il lançait la méthode directement dans les commandes.

Tout ça ne nécessite pas un dispose quelque part ? Ou c'est superflu ?


Berka - posté le 04/02/2014 à 10:06:44 (493 messages postés)

❤ 0

planchant sur un script

Nukidoudi a dit:


Tu bosses sur quoi avec JRuby Berka?



Sur Rgss1, 2 et 3, voire 4 :clindoeil2

@Chaös17 : désolé j'ai pas en tête les fonctions rgss3. Mais tu dois pouvoir retrouver facilement l'affichage de playtime sur internet. Ce sont pas les scripts qui manquent !

Pense également à faire $sprite.dispose pour effacer le sprite.

Twitter: Pensées politiques et juridiques. Réflexions informatiques


Nukidoudi - posté le 04/02/2014 à 10:22:46 (733 messages postés) -

❤ 0

yo

Tu fais un port du RGSS sur Java? Pour du cross plateforme?

https://xvw.lol


Berka - posté le 04/02/2014 à 10:29:47 (493 messages postés)

❤ 0

planchant sur un script

Oui, un applet dans un premier temps et une application complète ensuite.

Twitter: Pensées politiques et juridiques. Réflexions informatiques


Nukidoudi - posté le 04/02/2014 à 10:35:51 (733 messages postés) -

❤ 0

yo

Je fais plus ou moins la même chose mais en visant le navigateur, avec HaXe.

https://xvw.lol


Berka - posté le 04/02/2014 à 10:42:24 (493 messages postés)

❤ 0

planchant sur un script

Et tu gères comment le scripting ruby avec Haxe ? Il supporte pas de binding, non ?

Twitter: Pensées politiques et juridiques. Réflexions informatiques


Nukidoudi - posté le 04/02/2014 à 11:02:40 (733 messages postés) -

❤ 0

yo

Je ne gères pas le scripting avec Ruby :) Je pars du principe que l'Event Extender (la version sur laquelle on travail) sera suffisant pour aller loin et qu'on peut convertir les scripts importants pour les projets sérieux (a la GeeX).

https://xvw.lol


HagiLunacy - posté le 20/02/2014 à 14:46:42 (1 messages postés)

❤ 0

Bonjour je suis nouveau et j'ai un petit problème, je voudrais faire un skill qui soit limité au nombre de pas que l'on fait (après un certain nombre de déplacement, le skill s'enlève. Un peu comme le parc safari dans les pokemon sur game boy) mais je ne sais pas comment faire :( . Pourriez vous m'aider ? :clindoeil3


brikou - posté le 23/02/2014 à 11:54:23 (282 messages postés)

❤ 0

Salut!

Voici mon problème :
Jusque là, pour pouvoir intégrer dans mes scripts ( RM.VX ) une forme comme celle ci :

Portion de code : Tout sélectionner

1
@chapter_name_1[1]


j'utilisais ça pour éviter le "undefined method '[]' for Nil class" :

Portion de code : Tout sélectionner

1
@chapter_name_1 = {} if @chapter_name_1 == nil



Puis j'ai voulu faire des variables avec 2 arguments [n,n] comme ça :

Portion de code : Tout sélectionner

1
2
$file1 = [{},{}] if $file1 == nil
$file1[1,1] = 1


jusque là tout marche.

Maintenant je veux 3 arguments [n,n,n]
La logique ce serait de faire ça :

Portion de code : Tout sélectionner

1
2
@file_name1 = [{},{},{}] if @file_name1 == nil
@file_name1[1,1,1] = "Exploration" 


Mais là ça me fait "error : wrong number of arguments (4 for 2)" en me désignant la ligne du @file_name1[1,1,1]...

Voilà, j'aimerais savoir comment résoudre ça.
Merci! ^^

Chromochimi (Arcade / Terminé) ||| La Question (Mini-jeu narratif / Terminé !) ||| Blade Converter (A-RPG ~ Beat them all / En cours !) ||| Des mini-projets Unity !


Grim - posté le 23/02/2014 à 12:35:13 (251 messages postés)

❤ 0

Pour la création s'il n'existe pas tu peux simplement faire :
variable ||= valeur (qui est une contraction de variables = variable || valeur) qui assignera une variable à la valeur donnée. Pour les tableaux, ne vaut-il pas mieux faire table[1][1] ? (je ne comprend pas pourquoi tu utilises 3 indice alors que tu n'as qu'un seul état d'imbrication...)

Et je ne suis pas sur que tu aies bien compris les tableaux et les hash... tableau[0] renvoi la première cellule. Donc si tu as quelque chose comme ça taleau = [[1,2], [3, 4]] et bien taleau[0] vaudra [1,2] et tableau[1] vaudra [3,4] donc par exemple, tableau[1][1] = 4, tu saisis?

http://funkywork.github.io/


brikou - posté le 23/02/2014 à 12:54:33 (282 messages postés)

❤ 0

Les tableaux et les hashs en fait je sais pas ce que c'est :s
J'ai bien lu des tutos sur le Ruby mais mon expérience de scripteur se base plutôt sur l'observation des scrpts de base de RM... (en gros je fais du copitage quoi :grossourire)

donc si j'ai bien compris il faudrait plutôt que je fasse ça :

Portion de code : Tout sélectionner

1
2
]@file_name1 = {}{}{} if @file_name1 == nil
@file_name1[1][1][1] = "Exploration" 

?

Edit : Marche pas...

En fait ce que je veux faire (je précise au cas ou j'utilise une mauvaise manière), c'est rajouter des ID à mes variables :
come ça je fait @file_name1[1,1,1] = "Exploration"
et après je demande la variable @file_name1[@ID_categoie,@ID_chapitre,@ID_etape]
et si @ID_categorie == 1 @ID_chapitre == 1 @ID_etape ==1 alors ma variable = "Exploration"

Chromochimi (Arcade / Terminé) ||| La Question (Mini-jeu narratif / Terminé !) ||| Blade Converter (A-RPG ~ Beat them all / En cours !) ||| Des mini-projets Unity !

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

Index du forum > Entraide > [Scripts] Petites questions connes sur les SCRIPTS!!

repondre up

Suite à de nombreux abus, le post en invités a été désactivé. Veuillez vous inscrire si vous souhaitez participer à la conversation.

Haut de page

Merci de ne pas reproduire le contenu de ce site sans autorisation.
Contacter l'équipe - Mentions légales

Plan du site

Communauté: Accueil | Forum | Chat | Commentaires | News | Flash-news | Screen de la semaine | Sorties | Tests | Gaming-Live | Interviews | Galerie | OST | Blogs | Recherche
Apprendre: Visite guidée | RPG Maker 95 | RPG Maker 2003 | RPG Maker XP | RPG Maker VX | RPG Maker MV | Tutoriels | Guides | Making-of
Télécharger: Programmes | Scripts/Plugins | Ressources graphiques / sonores | Packs de ressources | Midis | Eléments séparés | Sprites
Jeux: Au hasard | Notre sélection | Sélection des membres | Tous les jeux | Jeux complets | Le cimetière | RPG Maker 95 | RPG Maker 2000 | RPG Maker 2003 | RPG Maker XP | RPG Maker VX | RPG Maker VX Ace | RPG Maker MV | Autres | Proposer
Ressources RPG Maker 2000/2003: Chipsets | Charsets | Panoramas | Backdrops | Facesets | Battle anims | Battle charsets | Monstres | Systems | Templates
Ressources RPG Maker XP: Tilesets | Autotiles | Characters | Battlers | Window skins | Icônes | Transitions | Fogs | Templates
Ressources RPG Maker VX: Tilesets | Charsets | Facesets | Systèmes
Ressources RPG Maker MV: Tilesets | Characters | Faces | Systèmes | Title | Battlebacks | Animations | SV/Ennemis
Archives: Palmarès | L'Annuaire | Livre d'or | Le Wiki | Divers