Day.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: Dread Mac Farlane - episode 4 / Sorties: Star Trek: Glorious Wolf - (...) / Sorties: Dread Mac Farlane - episode 3 / News: Plein d'images cools créées par (...) / Sorties: Star Trek: Glorious Wolf - (...) / Chat

Bienvenue
visiteur !




publicité RPG Maker!

Statistiques

Liste des
membres


Contact

Mentions légales

511 connectés actuellement

29192314 visiteurs
depuis l'ouverture

7365 visiteurs
aujourd'hui



Barre de séparation

Partenaires

Indiexpo

Akademiya RPG Maker

Blog Alioune Fall

Fairy Tail Constellations

Level Up!

Le Temple de Valor

Leo-Games

Guelnika & E-magination

Lumen

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:

Ephy - posté le 22/05/2012 à 16:35:24 (30083 messages postés) - honor

❤ 0

[BIG SHOT]

Citation:

La remarque à peine placée exprès pour faire genre, alors que c'est pas très exact..


C'est pour ça que j'ai rajouté ça après: "j'viens demander de l'aide ici"
Les autres fois c'est soit des topics d'entraide, soit dans les discussions générales.
Et si j'ai déjà demandé des trucs ici, m'en souviens pas. Mais je ne nie pas demander de l'aide sur les scripts quand j'ai pas envie de passer des heures à chercher un truc que de toute façon je trouverais pas.
Alors tais-toi vilain troll :clown



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


Suite du sujet:

S4suk3 - posté le 22/05/2012 à 16:36:46 (555 messages postés)

❤ 0

-

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
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
#==============================================================================
# ** Game_Party
#------------------------------------------------------------------------------
#  This class handles the party. It includes information on amount of gold 
#  and items. Refer to "$game_party" for the instance of this class.
#==============================================================================
 
class Game_Party
        #--------------------------------------------------------------------------
        # * Public Instance Variables
        #--------------------------------------------------------------------------
        attr_accessor :ames
 
        #--------------------------------------------------------------------------
        # * alias
        #--------------------------------------------------------------------------
        alias ame_initialize initialize
 
        #--------------------------------------------------------------------------
        # * Object Initialization
        #--------------------------------------------------------------------------
        def initialize
                ame_initialize
                @ames = 0
        end
 
end
 
#==============================================================================
# ** Game_Battler (part 1)
#------------------------------------------------------------------------------
#  This class deals with battlers. It's used as a superclass for the Game_Actor
#  and Game_Enemy classes.
#==============================================================================
 
class Game_Battler
        #--------------------------------------------------------------------------
        # * Change HP
        #     hp : new HP
        #--------------------------------------------------------------------------
        def hp=(hp)
                @hp = [[hp, maxhp].min, 0].max
                # add or exclude incapacitation
                for i in 1...$data_states.size
                        if $data_states[i].zero_hp
                                if self.dead?
                                        $game_party.ames += 1
                                        add_state(i)
                                else
                                        remove_state(i)
                                end
                        end
                end
        end
 
end
 
#==============================================================================
# ** Interpreter (part 1)
#------------------------------------------------------------------------------
#  This interpreter runs event commands. This class is used within the
#  Game_System class and the Game_Event class.
#==============================================================================
 
class Interpreter
        #--------------------------------------------------------------------------
        # * return Ames values
        #--------------------------------------------------------------------------
        def ames(value = false)
                return $game_party.ames unless value
                $game_party.ames += value if value.is_a?(Numeric)
        end
 
end
 



je n'ai pas testé mais ça devrait fonctionner.
Pour récupérer dans un events le nombre d'ames, tu fais
Appel de script > "ames"
pour oujouter
Appel de script > "ames 1" ou "ames 766" ou "ames -98"


Edit: Il faut impérativement perdre cette manie de modifier le code du RGSS, Ruby nous offre des solutions de monkeypatching (qui rend déjà le code difficilement raisonnable, alors si les gens mélanges les solutions :'( )


SimultaneitySmith - posté le 22/05/2012 à 16:56:59 (444 messages postés)

❤ 0

Jazzeux et maker... Ca existe ça?

Oui mais du coup ca marche plus avec le système qui fonctionne sur cette variable! Je m'en sert dans d'autres scripts et j'ai essayé en remplacant tous les $ames par des $game_system.ames et mon autre système ne fonctionne plus!
J'y connais tellement rien, ca fait peur... :goutte

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


S4suk3 - posté le 22/05/2012 à 17:05:58 (555 messages postés)

❤ 0

-

Quelle erreur as-tu?

Edit:
un petit article tout neuf
http://funkywork.blogspot.com/2012/05/le-monkey-patching.html


SimultaneitySmith - posté le 22/05/2012 à 18:44:07 (444 messages postés)

❤ 0

Jazzeux et maker... Ca existe ça?

Euh atta c'est juste a rajouter ca au dessus de main? Ou bien je dois remplacer chaque classe par celle que tu donne? Ce qui m'etonerais vu que tu dis:

Citation:

Edit: Il faut impérativement perdre cette manie de modifier le code du RGSS, Ruby nous offre des solutions de monkeypatching (qui rend déjà le code difficilement raisonnable, alors si les gens mélanges les solutions )



Mais donc qu'est-ce qui faut que j'enlève de ce que m'as dit Naféria ?

Désolé c'est peu etre tout con :doute5 en tout cas merci pour ton aide :sourire2

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


zou - posté le 22/05/2012 à 18:46:09 (2197 messages postés)

❤ 0

MAIS sacre dieux, j'ai posté la réponse avant, lis les poste c'est mieux...

Je la repost quand même :hum

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
class Game_Battler
  #--------------------------------------------------------------------------
  # * Change HP
  #     hp : new HP
  #--------------------------------------------------------------------------
  def hp=(hp)
    @hp = [[hp, maxhp].min, 0].max
    for i in 1...$data_states.size
      if $data_states[i].zero_hp
        if self.dead?
          add_state(i)                # ID des monstres
          if self.is_a?(Game_Enemy) and [1,2,3,4].include?(id)
 
            # ce que tu veux faire
 
          end
        else
          remove_state(i)
        end
      end
    end
  end
  
end


@s4*4=16suké
Tu as oublié le if self.is_a?(Game_Enemy)


S4suk3 - posté le 22/05/2012 à 18:46:21 (555 messages postés)

❤ 0

-

ce que j'ai écrit est indépendant de ce qu'a fait Naféria, tu supprime ses modifications et tu colles mon code au dessus de main

Zou > Il demandait comment avoir un compteur d'âmes, soit de monstres tués, donc en l'occurence, il lui faut l'interface et le modificateur.
Edit => Par contre tu as raison pour le is_a? Autant pour moi ^désolé^'


Åvygeil - posté le 22/05/2012 à 19:46:55 (2502 messages postés)

❤ 0

Oui, ou bien on fait la modif dans Game_Enemy et pas dans Game_Battler...

Les mecs, faudrait apprendre à vous servir de l'héritage pour éviter de faire des tests de type tout moches...


Zeus81 - posté le 22/05/2012 à 19:50:21 (11071 messages postés)

❤ 0

Pourquoi mettre ça dans la boucle ?


S4suk3 - posté le 22/05/2012 à 20:30:05 (555 messages postés)

❤ 0

-

Åvygeil a dit:


Oui, ou bien on fait la modif dans Game_Enemy et pas dans Game_Battler...

Les mecs, faudrait apprendre à vous servir de l'héritage pour éviter de faire des tests de type tout moches...



Je ne connais pas la structure de XP, je n'ai fait que "ajouter la gestion de la sauvegarde" à ce qu'avait fait le maker avant.
Je ne me suis jamais réellement penché sur XP, donc désolé.
C'est vrai qu'utiliser Game_Enemy est plus adapté


zou - posté le 22/05/2012 à 20:39:59 (2197 messages postés)

❤ 0

Portion de code : Tout sélectionner

1
2
3
4
5
6
7
8
class Game_Enemy < Game_Battler
  def hp=(hp)
    super(hp)         # ID des monstres
    if self.dead? and [1,2,3,4].include?(id)
      # ...
    end
  end
end


Vous avez raison ^^


Mack - posté le 23/05/2012 à 15:04:11 (2286 messages postés)

❤ 0

Salut !

J'aurais une petite question, est il possible de rajouté une ligne de commande dans le Game.ini, et de la récupérer IG ? ?

En faite, j'fais un système de MaJ, et j'voudrais savoir si c'était possible de rajouter un ligne "Version=X" dans le Game.ini, ou si c'était plus facile de créer un fichier .txt à côté ?

( Je prend note de tout les commentaires, même si je n'y répond pas )


Tasslehoff - posté le 23/05/2012 à 16:16:38 (5233 messages postés)

❤ 0

Disciple de Pythagolf

Ptêt' un truc comme ça :

Portion de code : Tout sélectionner

1
2
3
File.open("Game.ini", 'r') do |txt_file|
  p txt_file.read.sub(/^.*Version=/m, "").to_f
end


Non ?



~~


SimultaneitySmith - posté le 23/05/2012 à 21:05:23 (444 messages postés)

❤ 0

Jazzeux et maker... Ca existe ça?

Ok j'ai trouvé la source du problème tout seul, comme un grand! En tout cas merci beaucoup Tasslehoff, S4suk3, zou et Naféria de vous etre penchés sur la question ! :banane Victoire, tout marche! :F :rit2

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


Berka - posté le 24/05/2012 à 22:15:24 (493 messages postés)

❤ 0

planchant sur un script

@Mack :

Sinon, vu que tu travailles sur des fichiers *.ini:

Portion de code : Tout sélectionner

1
2
3
4
5
6
7
8
9
10
11
12
13
14
WPPS=Win32API.new('kernel32','WritePrivateProfileString','pppp','l')
GPPS=Win32API.new('kernel32','GetPrivateProfileString','pppplp','l')
 
$label = "Version"
 
def write(i)
    WPPS.call("Game", $label, i.to_s, ".//Game.ini")
end
 
def read
    GPPS.call("Game", $label, "", v="\0"*16, 16, ".//Game.ini")
    v.delete!("\0")
    Integer(v=="" ? v="0" : v)
end



Bonne soirée,

Berka

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


Mack - posté le 25/05/2012 à 17:56:46 (2286 messages postés)

❤ 0

Finalement, j'ai décidé de passer par une fichier Version.txt.

Mais j'arrive pas à lire le fichier Version.txt, et à lire la première ligne seulement ...

J'ai essayer de mettre :

Portion de code : Tout sélectionner

1
2
3
    if FileTest.exist?("System/Version.txt")
      f = File.open("Version.txt","r")
    end


Mais il me dit que le fichier Version.txt n’existe jamais ... Pourtant il y est à côté de Game.ini ...

( Je prend note de tout les commentaires, même si je n'y répond pas )


Zeus81 - posté le 25/05/2012 à 18:08:06 (11071 messages postés)

❤ 0

Un coup tu cherches dans le dossier system l'autre non.
Sinon tu devrais apprendre à faire des recherches par toi même ça te fera pas de mal, même dans la doc de RM la classe File est documentée.
En plus Tasslehoff t'as déjà donné la réponse.


Naféria - posté le 25/05/2012 à 18:13:56 (35 messages postés)

❤ 0

Aujourd’hui tu mourras dans un ascenseur, assures-toi d'appuyer sur le bouton haut.

Il dit qu'il existe pas car le fichier txt est pas dans la racine du jeux, si ton fichier et dans le dossier System tu doit faire: File.open("System/Version.txt","r")
Mes je sais pas comment le lire par contre.

C'est ma signature, elle est sympa et originale et l'avantage, c'est que je ne suis pas aller la chercher loin !


Mack - posté le 25/05/2012 à 18:34:28 (2286 messages postés)

❤ 0

J'me suis mal exprimé, c'pas qu'il me donne un message d'erreur, c'est que la condition est jamais vrai, alors que j'ai bien mon fichier dans System.

Finalement j'ai trouvé, le fichier s'appelé "Version.txt.txt" ^^".

Et après, j'ai fait comme ça :

Portion de code : Tout sélectionner

1
2
3
4
5
    if FileTest.exist?("System/Version.txt")
      f = File.open("System/Version.txt","r")
      version = f.readlines[0]
      return version.to_i
    end



Encore désoler ^^".


Pour la Doc, j'l'ai en Japonaise moi ^^".

( Je prend note de tout les commentaires, même si je n'y répond pas )


Zeus81 - posté le 25/05/2012 à 18:42:29 (11071 messages postés)

❤ 0

Tu devrais installer la version de Kaila et puis de toute façon ruby doc quoi.


FoxFiesta - posté le 27/05/2012 à 21:02:36 (443 messages postés)

❤ 0

Bonjour, je m'y connais très peu en script, et j'essayais de faire un truc sur VX Ace mais j'ai un problème.
Je veux récupérer la vie actuelle de héros 1 et aussi sa vie max.
Dans RMXP, c'était :
$game.actors[1].hp
et
$game.actors[1].max_hp
si je me trompe pas.
J'ai cherché dans la doc de VX Ace et j'ai pas trouvé. Quelqu'un sait ?


S4suk3 - posté le 28/05/2012 à 00:29:55 (555 messages postés)

❤ 0

-

$game_party.members[ID].hp ?


FoxFiesta - posté le 28/05/2012 à 16:39:37 (443 messages postés)

❤ 0

Citation:

Script 'Game_Interpreter' line 1411: NoMethodError occured

undefined method 'hp' for nil:NilClass



Ensuite j'ai essayé des trucs au hasard, et je suis arrivé à avoir les HP en tapant ça :
$game_actors[1].hp
Mais je n'ai pas trouvé comment avoir les HP max, pourtant j'ai essayé plein de trucs...


Mack - posté le 28/05/2012 à 16:46:52 (2286 messages postés)

❤ 0

M’étonnes que ça ait pas marcher quand même ...
T'avais assez de héros dans l'équipe ?

Essaie .m_hp, de tête ça doit être ça.

( Je prend note de tout les commentaires, même si je n'y répond pas )


FoxFiesta - posté le 28/05/2012 à 17:19:52 (443 messages postés)

❤ 0

Non, c'était pas ça. Bon, tant pis pour ça, finalement je vais les prendre dans l'éditeur ces deux variables, puis les reprendre avec $game_variables[1]

Sauf que là j'ai un dernier problème dans mon script. Je veux prendre le pourcentage de vie du héros par rapport à sa vie max, donc en faisant le calcul :
$game_variables[1] * 100 / $game_variables[2]
Ça j'ai testé, ça pose pas de problème. Maintenant je veux prendre la valeur obtenue pour définir le zoom en largeur d'une image (pour faire la barre de vie). Je pensais donc faire :

$game_picture[1].zoom_x = $game_variables[1] * 100 / $game_variables[2]

Il me dit "Undefined method for '[]' for nil:NilClass"

Donc quelqu'un sait comment changer le zoom x d'une image :p


Mack - posté le 28/05/2012 à 17:30:56 (2286 messages postés)

❤ 0

Portion de code : Tout sélectionner

1
$game_screen.pictures[1].zoom_x = machin


Devrais marcher. J'me sert pas des pictures, donc aussi bien, juste modifier zoom_x marchera pas, et il te faudrait utiliser :

Portion de code : Tout sélectionner

1
show(name, origin, x, y, zoom_x, zoom_y, opacity, blend_type)



J'viens de vérifier, et c'est mhp.
Mais j'vois pas pourquoi passer par des variables ...

Tu veux afficher la vie du premier héros de l'équipe je suppose ?
Il te suffit de faire :

Portion de code : Tout sélectionner

1
$game_party.members[0].hp


Portion de code : Tout sélectionner

1
$game_party.members[0].mhp



( Je prend note de tout les commentaires, même si je n'y répond pas )

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