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

Sorties: Star Trek: Glorious Wolf - (...) / Sorties: Dread Mac Farlane - episode 3 / News: Plein d'images cools créées par (...) / Sorties: Star Trek: Glorious Wolf - (...) / Jeux: Final Fantasy 2.0 / Chat

Bienvenue
visiteur !




publicité RPG Maker!

Statistiques

Liste des
membres


Contact

Mentions légales

247 connectés actuellement

29185473 visiteurs
depuis l'ouverture

5738 visiteurs
aujourd'hui



Barre de séparation

Partenaires

Indiexpo

Akademiya RPG Maker

Blog Alioune Fall

Fairy Tail Constellations

Le Temple de Valor

Alex d'Or

RPG Maker VX

Offgame

Planète Glutko

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:

Dyeel - posté le 23/08/2013 à 23:43:38 (200 messages postés)

❤ 0

Salut.

Gay164, sinon tu peux utiliser les APIs Windows en script
C'est ce que j'ai fait pour mon jeu. C'est une petite bidouille mais ça marche.

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
 
#=============
# Main (+ plein écran)
#--------------------
# Script de base revu par DYEEL
#=============
 
# Lancer le programme
begin
# Plein écran commande Win32API
hauteur_ecran = Win32API.new('user32','GetSystemMetrics','i','i').call(0)
if hauteur_ecran != 640
screen = Win32API.new('user32', 'keybd_event', %w(l l l l), '')
screen.call(18,0,0,0)
screen.call(13,0,0,0)
screen.call(18,0,2,0)
screen.call(13,0,2,0)
end
#--------------------
# Script de base du jeu
#--------------------
# Choix de la police + taille
Font.default_name = $fontface = "Arial"
Font.default_size = $fontsize = 22
Graphics.freeze
# Lancer l'écran titre
$scene = Scene_Title.new
# ???
while $scene != nil
$scene.main
end
# ???
Graphics.transition(20)
rescue Errno::ENOENT
  # Erreurs de démarrage, fichiers non trouvés
  # If unable to open file, display message and end
  filename = $!.message.sub("No such file or directory - ", "")
  print("Le fichier \"#{filename}\" n'a pas été trouvé.")
end
 




Suite du sujet:

gay164 - posté le 24/08/2013 à 22:45:27 (23 messages postés)

❤ 0

Merci Dyeel !:D
C'est tout con et ça marche super bien !


Cortez - posté le 26/08/2013 à 09:14:27 (523 messages postés)

❤ 0

Aide sur une commande en script Rmxp :

Je viens de voir le script posté juste au dessus, et la ligne suivante
m'intrigue, je voudrais savoir ce qu'elle signifie.

Portion de code : Tout sélectionner

1
screen = Win32API.new('user32', 'keybd_event', %w(l l l l), '')



Et 'keybd_event' me fait penser à une simulation de touche.
Est-il possible de presser des touches via une ligne de script (event) ?

Du genre :
bidule = C_key
Pour permettre de naviguer dans les menus de manière
automatique afin de réaliser un tutoriel où le jeu prend les commandes.


Dyeel - posté le 26/08/2013 à 11:31:15 (200 messages postés)

❤ 0

Salut Cortez.

Effectivement cette API te permet de simuler l'appui de touches clavier (ici alt et entrée pour le plein écran).

Le 0 et le 2 en troisième position dans le call correspondent à l'appui/relâchement de la touche (si je me souviens bien).

Et le 13 et le 18 sont les codes virtuels des touches, facilement trouvables sur le net (ou même dans les scripts de gestion clavier, sauf que dans ces derniers les codes sont souvent en hexa, mais ça doit rien changer).

Exemple : tu veux simuler l'appui sur TAB.
Tu rends une variable égale à l'api (on l'appelle touche au lieu de screen), puis:
touche.call(9,0,0,0)
touche.call(9,0,2,0)


arttroy - posté le 26/08/2013 à 14:20:40 (2394 messages postés)

❤ 0

Just working

Citation:

Ici, on pose des questions dans une démarche d'apprentissage. Il était quand même temps que quelqu'un fasse ce petit rappel pour tous les membres qui posent leurs questions ici dès qu'ils utilisent un script dégueulasse et bugué ramassé on ne sait où...



Citation:

Sinon, je comprends que ça énerve mais un peu moins d'animosité aurait rendu le message un peu plus adéquat



Ouais mais c'est Avygeil... Normal... En même temps je le comprend aussi, après deux étés passés sur Oniro, j'ai pu voir a quel point les gens arrivant à cette période sont peu respectueux des règles établies et des usages donc je comprend l'agacement de ceux qui ont pu en connaitre plus. Le pire c'est que passé l'été bien souvent la plupart disparaissent du forum et on entend plus jamais parler d'eux.

Anti-inconstructivité / Pétition pour que le mot making soit inscrit dans le dictionnaire ?


Maniax Skell (Alias Hazem) - posté le 27/08/2013 à 00:19:58 (2733 messages postés)

❤ 0

Man Of The Gaping Mind

Alors, je pose ma question ici car à mon avis la réponse se trouve bien dans les scripts.
Je crée un jeu d'aventure qui nécessite d'utiliser un objet précis à un endroit précis afin de progresser dans le jeu (comme dans les point n' click). Il ne s'agit donc pas d'un rpg, j'aimerais donc savoir comment faire en sorte que, par script, lorsque l'on sélectionne un objet, la barre de statut du héros n'apparaisse pas (un peu comme si l'objet n'était pas disponible ou utilisable).

Je vous remercie d'avance.


brikou - posté le 27/08/2013 à 16:11:49 (282 messages postés)

❤ 0

C'est pas dans les scripts faut juste que tu mettes "Non consomable" dans la base de donnée.
Quant à moi j'essaie de créer une window basique :

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
class Window_Clue < Window_Base
  
def initialize(text)
    @text = text
    super(10, 250, 340, 90) 
    self.windowskin = Cache.system("TDS-Lufia Window")
    self.back_opacity = 255    
    refresh
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    self.contents.font.name = "A Font with Serifs"
    self;contents.font.shadow = true
    self.contents.font.size = 30
    self.contents.draw_text(0,0,250,32,@text,1)
  end
end



Et pour l'appeler via event j'utilise window_clue = Window_Clue.new("texte")
La fenêtre s'affiche bien mais le problème c'est qu'elle disparaît au bout d'une seconde, alors que moi j'aimerais choisir moi-même quand elle disparaît grâce à un script window_clue.dispose... J'ai déjà essayé de faire des trucs avec window_clue.active = true / false mais ça a pas marché. Je suis sur que c'est tout con à faire mais je trouve pas...

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


Maniax Skell (Alias Hazem) - posté le 27/08/2013 à 16:55:01 (2733 messages postés)

❤ 0

Man Of The Gaping Mind

Citation:

C'est pas dans les scripts faut juste que tu mettes "Non consomable" dans la base de donnée.



Hé coco, ça je le sais bien t'en fais pas. Tu n'as pas bien saisi mon problème: si je le mets en tant que "non consommable" dans le menu, alors je ne peux pas utiliser l'objet non plus pour l'utiliser sur une porte ou un coffre !
Mais bref, j'ai finalement trouvé la solution tout seul donc ça fait un rigolo de moins à prendre en compte. ^^


brikou - posté le 28/08/2013 à 14:25:41 (282 messages postés)

❤ 0

AU SECOURS !!!!
ça fait des heures, j'ai gâché toute ma matinée pour rien parce que j'arrive pas à comprendre pourquoi cette %^µ@#&)£¤ de window de $è!§**"##& s'efface toute seule comme une grosse {8çù%%%*µ$¤¤ !!!
Please HELP ME ! :leure3 D'autant plus que je sais parfaitement qu'il faut juste faire un petit truc à la con ! ça m'empêche d'avancer dans mon projet.
Je rend grâce à celui qui me trouvera la solution ! X'D

PS : Ah, et j'utilise VX

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


Crystal - posté le 28/08/2013 à 17:34:48 (2068 messages postés) -

❤ 0

C'est normal, tu déclares window_clue. Une variable locale sert seulement durant la méthode qui l'utilise. Ruby détermine ensuite grâce au Garbage Collector que c'est une donnée non-utilisée puisque sa référence a été effacée de la mémoire suite à son usage. Il se débarrasse donc de l'objet. Pour conserver la référence et donc l'objet, ta fenêtre, il doit être dans une variable globale, d'instance ou de classe.

Dans quel contexte utilises-tu cette fenêtre ?


brikou - posté le 28/08/2013 à 17:39:31 (282 messages postés)

❤ 0

Sur la map. Du coup je doit ajouter quelque chose dans l'instance de la map ?

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


Crystal - posté le 28/08/2013 à 17:41:15 (2068 messages postés) -

❤ 0

Si tu l'utilises dans un événement, puisque je n'ai pas ton code exact, je vais te conseiller de déclarer ta fenêtre comme $window_clue, et ton problème devrait théoriquement être réglé.

Si tu veux avoir l'état de ta fenêtre après l'avoir déclarée, tu peux utiliser $window_clue.disposed?


brikou - posté le 28/08/2013 à 17:54:00 (282 messages postés)

❤ 0

Merci beaucoup ! Je me souvenais plus de $ !! Je risque de plus l'oublier maintenant XD
Merci Crystal !!!!

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


Crystal - posté le 28/08/2013 à 17:59:03 (2068 messages postés) -

❤ 0

De rien. Mais fais attention, ce n'est pas une bonne pratique d'utiliser des variables globales, limite-les si possible.


brikou - posté le 28/08/2013 à 19:53:05 (282 messages postés)

❤ 0

Oui je savais ça, je n'en utiliserais que deux maximum (normalement)

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


trucbiduleII - posté le 08/09/2013 à 12:25:59 (815 messages postés)

❤ 0

Support : RMVX Ace

Question :
Je cherche à réduire l'interligne (espace entre deux lignes) des messages, mais je ne sais pas où il se règle. (je pense que c'est dans "Window_Message" mais je n'arrive pas à trouver où en particulier) Cela me servirait pour utiliser des polices dont l'interligne est trop grand pour la fenêtre de base, pour que les messages affichent toujours 4 lignes et non seulement 3. :sourit

Mon deviantArt || Ma chaîne Youtube


Zeus81 - posté le 08/09/2013 à 15:41:14 (11071 messages postés)

❤ 0

Portion de code : Tout sélectionner

1
2
3
4
5
6
7
class Window_Message
  alias z_process_new_line process_new_line
  def process_new_line(text, pos)
    z_process_new_line(text, pos)
    pos[:y] -= 5
  end
end


Et tu remplaces 5 par le décalage que tu veux.


trucbiduleII - posté le 08/09/2013 à 16:33:41 (815 messages postés)

❤ 0

Merci Zeus, ça fait bien ce que je voulais. Mais du coup est apparu un autre souci ... ^^"

J'ai un texte de quatre lignes dans l'éditeur, qui s'affiche correctement avec la police de base. J'ai changé de police, mais la quatrième ligne s'affichait sur un autre message. J'en ai déduit que l'interligne était trop grand donc je l'ai diminué avec ton bout de script. La police est bien maintenant, mais même s'il y a la "place", la quatrième ligne s'affiche tronquée en hauteur sur un nouveau message. :doute2

Mon deviantArt || Ma chaîne Youtube


Zeus81 - posté le 08/09/2013 à 16:39:24 (11071 messages postés)

❤ 0

Sinon à la place tu peux utiliser :

Portion de code : Tout sélectionner

1
2
3
4
5
class Window_Message
  def calc_line_height(text, restore_font_size = true)
    super - 5
  end
end


Mais ça risque de te tronquer le bas des lettres.


trucbiduleII - posté le 08/09/2013 à 16:41:53 (815 messages postés)

❤ 0

J'ai rien dit, j'avais pas assez diminué ... Désolée d'avoir remis en cause ton script ! ;)

Mon deviantArt || Ma chaîne Youtube


Mr smith - posté le 13/09/2013 à 18:07:59 (444 messages postés)

❤ 0

Jazzeux et maker... Ca existe ça?

Support : RMVX Ace

Question :
Je cherche a rendre une variable du jeu égale a une stat (genre l'attaque) du membre n°X de l'équipe.
Le logiciel permet seulement de la rendre égale au perso donc l'ID est X, mais j'ai vraiment besoin que ça change en fonction de sa place dans l'équipe...

J'ai pensé qu'avec la petite option "script" dans le contrôle des variables ça serait faisable

Je sais pas si j'ai été très clair :flaco

Unbelivabledaze! Mon Touitère || Mes mousiques || Ma chaine Twitch (live gamedev/pixel art tous les aprem de semaine a 14h) || Mon sitoueb


Ephy - posté le 13/09/2013 à 18:26:38 (30083 messages postés) - honor

❤ 0

[BIG SHOT]

Y'a pas moyen de récupérer l'id du perso à telle place? (genre tu choppe l'id du perso en place 1 et l'attaque du perso qui a ce même id...).



Power Level: 1 148 355,38|Mystic Slayer (Value!+)|Le monde d'Adélaïde|Reikon no Yume|★ H-Project|Toho Danmaku Arena|Loli versus Ponies|Mes vidéos|Ma galerie|Débuter sur VX:10, 11|Tuto: Importation de ressources|Mapper avec les RTP VX|Touhou|Fan de Omenides|Fan de Estheone|Eph'ille: 14


Mr smith - posté le 13/09/2013 à 18:35:08 (444 messages postés)

❤ 0

Jazzeux et maker... Ca existe ça?

En fait je peux choper son ID et l'enregistrer dans une variable.
Seulement après quand je veux enregistrer l'attaque d'un perso, je ne peux pas déterminer l'ID du perso en fonction d'une variable.
Le log permet seulement de dire telle variable = l'attaque de tel perso

:-/

Unbelivabledaze! Mon Touitère || Mes mousiques || Ma chaine Twitch (live gamedev/pixel art tous les aprem de semaine a 14h) || Mon sitoueb


Ephy - posté le 13/09/2013 à 19:12:06 (30083 messages postés) - honor

❤ 0

[BIG SHOT]

Bah... faut imaginer un système à l'ancienne. Si Id = 1, prendre l'attaque du persos 1, si ID = 2, prendre l'attaque du perso 2, etc.
Si t'as pas trouzemillions de persos ça va (après si t'en a plus de 50 là ça peut commencer à faire beaucoup).



Power Level: 1 148 355,38|Mystic Slayer (Value!+)|Le monde d'Adélaïde|Reikon no Yume|★ H-Project|Toho Danmaku Arena|Loli versus Ponies|Mes vidéos|Ma galerie|Débuter sur VX:10, 11|Tuto: Importation de ressources|Mapper avec les RTP VX|Touhou|Fan de Omenides|Fan de Estheone|Eph'ille: 14


Mr smith - posté le 13/09/2013 à 19:35:58 (444 messages postés)

❤ 0

Jazzeux et maker... Ca existe ça?

Ben justement je fais un CBS ou j'ai besoin d'utiliser beaucoup beaucoup de perso (genre dans les 100 ou 150)

D'ou ma question :D

Unbelivabledaze! Mon Touitère || Mes mousiques || Ma chaine Twitch (live gamedev/pixel art tous les aprem de semaine a 14h) || Mon sitoueb


Ephy - posté le 13/09/2013 à 20:33:58 (30083 messages postés) - honor

❤ 0

[BIG SHOT]

Mmmh... ça reste faisable mais long. Et chiant. Mais faisable.
Enfin un CBS à 150 persos c'est quand même énorme. Faut y aller pour avoir 150 persos. Tu fais un remake de pokemon ou quoi?



Power Level: 1 148 355,38|Mystic Slayer (Value!+)|Le monde d'Adélaïde|Reikon no Yume|★ H-Project|Toho Danmaku Arena|Loli versus Ponies|Mes vidéos|Ma galerie|Débuter sur VX:10, 11|Tuto: Importation de ressources|Mapper avec les RTP VX|Touhou|Fan de Omenides|Fan de Estheone|Eph'ille: 14

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