Partagez
Aller en bas
avatar
Insalestic
Membre

Nombre de messages : 143
Age : 21
Localisation : France Toulon (83)
Distinction : aucune
Date d'inscription : 05/12/2015

Résolu Donner valeur à variable avec du code

le Dim 18 Juin 2017 - 1:32
salut salut !

j'utilise de QuasiABS et j'ai besoin de donner aux monstres une variable qui augmente de 1 à chaque fois qu'ils meurent (car oui je souhaite qu'il repop) je pense donc procéder comme suit :


$gameVariables.setValue(var, value);


mais je ne sais pas comment utiliser la ligne de code ..... je cherche a pouvoir attribuer un nom de variable à la variable (je suppose qu'il faut remplacer le "var" entre parenthèse par le nom de la variable en question ? ) et pour la valeur je souhaite marquer " +1 " ça marche comme ça ? sinon comment faire pour augmenter la variable de 1 à chaque fois que l'ennemie meurt s\'il vous plaît ?

merci d'avance ! j'espère avoir été clair, chose assez compliquée vous me l'accorderez sur ce sujet !


Dernière édition par Insalestic le Mar 20 Juin 2017 - 21:42, édité 1 fois
avatar
tibluedream
Membre

Nombre de messages : 935
Age : 30
Localisation : France, Rueil, près de Paris
Distinction : Poisson 2017 [Amal]
Poisson 2018 [Amal']
Date d'inscription : 05/09/2016

Résolu Re: Donner valeur à variable avec du code

le Dim 18 Juin 2017 - 1:56
dans la théorie parce que je suis une buse niveau script mais dans le principe tu vérifie

Si monstre meurt : Var_MonsterPop = 0
Si Var_MonsterPop =< 1 : ne rien faire
Sinon : Varmonster = 1  

Mais autant utiliser une variable boléènne true false à ce tarif sauf si tu veux faire repopper plusieurs monstres à la suite

Dans ce cas la tu fixe le nombre Max de monstre comme ceci

Si Var_MonsterPop < 0 : Var_MonsterPop = 0
Si monstre meurt et Si Var_MonsterPop > 0 :  Var_MonsterPop = -1

Si Var_MonsterPop =< 10 : Var_MonsterPop = +1, attendre 300 frames , faire apparaître un ennemi à coordonnée
tu créé un rectangle pour définir la zone d'action puis tu créé une donnée pour monstre.x et monstre.y aléatoire allant dans le champs de ce rectangle, (tu peux faire ça sur un event pas besoin de script pour ça)

C'est l'idée à partir de laquelle tu peux travailler ^^
avatar
Insalestic
Membre

Nombre de messages : 143
Age : 21
Localisation : France Toulon (83)
Distinction : aucune
Date d'inscription : 05/12/2015

Résolu Re: Donner valeur à variable avec du code

le Dim 18 Juin 2017 - 11:51
en fait j'ai du mal m'exprimer ^^'

je souhaite juste savoir comment utiliser la ligne de code : $gameVariables.setValue(var, value);

à partir de là je souhaite gérer ma variable et donc la nommer (je pense qu'il faut donner le nom de la variable en remplaçant de "var"), et je souhaite faire augmenter de 1 cette variable à chaque mort de l'ennemie (je sais gérer la mort de l'énnenie je cherche donc juste a savoir comment écrire dans la ligne de code le " +1" à la place du "value" ! merci d'avance !
avatar
tonyryu
Membre

Nombre de messages : 895
Age : 38
Localisation : Près de Nantes
Distinction : aucune
Date d'inscription : 27/05/2010
http://www.tonyryudev.com

Résolu Re: Donner valeur à variable avec du code

le Dim 18 Juin 2017 - 12:03
Code:
Game_Variables.prototype.setValue = function(variableId, value) {
...
}

premier paramètre est l'ID de la variable le second, la valeur à positionner.
Tu ne peux pas la nommer, ça n'a d'ailleur aucun intêret dans l'exécution du jeu.

pour incrémenter la variable 001 :
Code:
$gameVariables.setValue(1, $gameVariables.value(1) + 1);
avatar
Dany
Membre

Nombre de messages : 768
Age : 22
Distinction : aucune
Date d'inscription : 16/11/2010
http://gamers-studio.forumofficiel.fr/

Résolu Re: Donner valeur à variable avec du code

le Dim 18 Juin 2017 - 12:22
@tonyryu a écrit:
Code:
Game_Variables.prototype.setValue = function(variableId, value) {
...
}

premier paramètre est l'ID de la variable le second, la valeur à positionner.
Tu ne peux pas la nommer, ça n'a d'ailleur aucun intêret dans l'exécution du jeu.

pour incrémenter la variable 001 :
Code:
$gameVariables.setValue(1, $gameVariables.value(1) + 1);

Tony je pense qu'on peut faire plus simple.
Bon j'ai pas essayer, mais sa doit être pareil comme au C#.
$gameVariables.setValue(1, +1);
Vu que value demande une valeur + ou -.
Ça doit fonctionner.
avatar
tonyryu
Membre

Nombre de messages : 895
Age : 38
Localisation : Près de Nantes
Distinction : aucune
Date d'inscription : 27/05/2010
http://www.tonyryudev.com

Résolu Re: Donner valeur à variable avec du code

le Dim 18 Juin 2017 - 15:12
@Dany a écrit:Vu que value demande une valeur + ou -
d'où tu sorts cela?

La fonction setValue de la "classe" Game_variables, attend 2 paramètres:
- l'ID de la variable
- la valeur a affecter

Il n'y a aucune notion de + ou de -

en c#, c'est pareil, il faut que la procédure en question puisse interprété correctement la valeur transmise en paramètre.

le code complet de la procédure :
Code:
Game_Variables.prototype.setValue = function(variableId, value) {
    if (variableId > 0 && variableId < $dataSystem.variables.length) {
        if (typeof value === 'number') {
            value = Math.floor(value);
        }
        this._data[variableId] = value;
        this.onChange();
    }
};

avatar
Insalestic
Membre

Nombre de messages : 143
Age : 21
Localisation : France Toulon (83)
Distinction : aucune
Date d'inscription : 05/12/2015

Résolu Re: Donner valeur à variable avec du code

le Dim 18 Juin 2017 - 22:56
je crois définitivement m'exprimer mal les amis et je vous fais débattre pour rien ......

je cherche tout simplement à faire appel à une variable tout comme on pourrait le faire par eventing !

sauf que par rapport au QuasiABS je dois l'écrire sous la forme codée !

(je veux faire ça pour utiliser la variable avec le HUD Maker de SRDude ET pour pouvoir lancer des event à partir du nombre qu'atteint cette variable )


Dernière édition par Insalestic le Dim 18 Juin 2017 - 23:03, édité 1 fois
avatar
Insalestic
Membre

Nombre de messages : 143
Age : 21
Localisation : France Toulon (83)
Distinction : aucune
Date d'inscription : 05/12/2015

Résolu Re: Donner valeur à variable avec du code

le Dim 18 Juin 2017 - 23:01
je cherche juste le code qui traduirait la phrase suivante en gros : " augmenter de 1 la variable qui se nomme 'ennemis tués' "

et étant donné la ligne de code que j'ai pu trouver => $gameVariables.setValue(var, value);

je pensais tout simplement que je pouvais faire => $gameVariables.setValue(ennemis tués, +1); mais sachant que la variable 'ennemis tués' est la numéro 0001 dans mon jeu, j'écris => $gameVariables.setValue(1, +1); ??

de manière à ce que la variable 'ennemis tués' augmente de 1 à chaque fois qu'on tue un ennemi

mais encore une fois je veux que ce soit le même type de variable que lorsqu'on passe par de l'éventing !
avatar
tibluedream
Membre

Nombre de messages : 935
Age : 30
Localisation : France, Rueil, près de Paris
Distinction : Poisson 2017 [Amal]
Poisson 2018 [Amal']
Date d'inscription : 05/09/2016

Résolu Re: Donner valeur à variable avec du code

le Lun 19 Juin 2017 - 7:25
Tonyryu ça veut dire quoi ? "===" dans ton code je connais "=="  la vérification d'égalité mais pas "==="
avatar
dricc
Membre

Nombre de messages : 2756
Localisation : Lille
Distinction : Altruiste - Incarnation de la Patience [Mist']
Date d'inscription : 10/08/2009

Résolu Re: Donner valeur à variable avec du code

le Lun 19 Juin 2017 - 10:34
@Insalestic a écrit:
de manière à ce que la variable 'ennemis tués' augmente de 1 à chaque fois qu'on tue un ennemi

mais encore une fois je veux que ce soit le même type de variable que lorsqu'on passe par de l'éventing !


Si vraiment , c'est ce que tu veux :
Code:

$gameMap._interpreter.operateVariable(2, 1, 1)

ça , c'est exactement ce qui est appelé par l'appel d'evenement .

parametres :
- ID de la variable
- Type d'opération : 0 écraser , 1 additionner , 2 soustraire , 3 multiplier , 4 diviser , 5 :reste de la division
- Valeur
avatar
Insalestic
Membre

Nombre de messages : 143
Age : 21
Localisation : France Toulon (83)
Distinction : aucune
Date d'inscription : 05/12/2015

Résolu Re: Donner valeur à variable avec du code

le Lun 19 Juin 2017 - 19:53
j'essaye ça ce soir mais d'après ce que tu me dis là c'est EXACTEMENT ça ! merci à toi !!!!!!!!!!!!! :DDDDD

du coup tu peux aussi me dire comment faire pour faire appel à sa valeur pour la voir ? pour le HUD maker j'ai besoin de la ligne de code qui me permet de savoir qui valeur a cette variable ! tu peux m'aider sur ce point aussi ? :p

en tout cas merci à tous ! vous êtes au top sur ce forum ! <3
avatar
Kingdommangas
Membre

Nombre de messages : 1186
Localisation : Ma tête
Distinction : Débrouillarde notoire é_è [Mist']
Ou celle qui partageait plus vite que son ombre [Gel']
Poisson 2017 [Amal]
Grâce à elle, tout le forum appelle Yamashi "Mamashi" [Yama]
Entraide d'Or
Règne dans l'ombre de la commu'
Youtubeuse beauté reconvertie dans le gaming [Amal']
Date d'inscription : 05/05/2015
https://www.youtube.com/channel/UCqGFuGrzm7jim1o5QJ4lKvg

Résolu Re: Donner valeur à variable avec du code

le Lun 19 Juin 2017 - 20:42
>>>ICI<<<
Sont compiler un dossier qui donne l'intégralité des appel de script de base d'RPG Maker MV
avatar
Insalestic
Membre

Nombre de messages : 143
Age : 21
Localisation : France Toulon (83)
Distinction : aucune
Date d'inscription : 05/12/2015

Résolu Re: Donner valeur à variable avec du code

le Lun 19 Juin 2017 - 20:55
c'est bien ce que j'ai utilisé, et j'avais pas trouvé la bonne ligne de code ^^'
avatar
dricc
Membre

Nombre de messages : 2756
Localisation : Lille
Distinction : Altruiste - Incarnation de la Patience [Mist']
Date d'inscription : 10/08/2009

Résolu Re: Donner valeur à variable avec du code

le Mar 20 Juin 2017 - 9:56
Ouais,ça ça y était pas ... parce que bon , c'est pas super pratique comme appel de code .

Pour avoir la valeur , ça aurait du etre dans le fichier excel par contre :
Code:

$gameVariables.value(1)

pour un test :
Code:

$gameVariables.value(1) == 1

où 1 est l'ID .
avatar
tonyryu
Membre

Nombre de messages : 895
Age : 38
Localisation : Près de Nantes
Distinction : aucune
Date d'inscription : 27/05/2010
http://www.tonyryudev.com

Résolu Re: Donner valeur à variable avec du code

le Mar 20 Juin 2017 - 10:18

Ma réponse en début de topic, répondant parfaitement à la demande.
pour incrémenter la variable 001 :
Code:
$gameVariables.setValue(1, $gameVariables.value(1) + 1);

@tibluedream a écrit:Tonyryu ça veut dire quoi ? "===" dans ton code je connais "=="  la vérification d'égalité mais pas "==="
Dans certains langage, il existe 2 types d'égalités, l'égalité de valeur ('==') et l'égalité stricte ('===')
En gros dans le cas de l'égalité stricte, on vérifie la valeur mais également le type de variable.

ptit exemple simple :
Code:
var uneChaine = '2';
var unNombre = 2;
if(uneChaine == unNombre){
  console.log("égalité valeur vrai");
}else{
  console.log("égalité valeur fausse");
}
if(uneChaine === unNombre){
  console.log("égalité strict vrai");
}else{
  console.log("égalité strict fausse");
}

Qui donnera :
égalité valeur vrai
égalité strict fausse
avatar
tibluedream
Membre

Nombre de messages : 935
Age : 30
Localisation : France, Rueil, près de Paris
Distinction : Poisson 2017 [Amal]
Poisson 2018 [Amal']
Date d'inscription : 05/09/2016

Résolu Re: Donner valeur à variable avec du code

le Mar 20 Juin 2017 - 10:52
Merci pour ta réponse clair ^^ Tonyryu
avatar
Insalestic
Membre

Nombre de messages : 143
Age : 21
Localisation : France Toulon (83)
Distinction : aucune
Date d'inscription : 05/12/2015

Résolu Re: Donner valeur à variable avec du code

le Mar 20 Juin 2017 - 21:44
Merci énormément pour votre aide !

vous êtes tous au top, et vos réponses sont à la fois simples et très complètes et explicative ! j'adore ! Smile

à la prochaine ahah ! Very Happy
Contenu sponsorisé

Résolu Re: Donner valeur à variable avec du code

Revenir en haut
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum