Day.png);">
Apprendre


Vous êtes
nouveau sur
Oniromancie?

Visite guidée
du site


Découvrir
RPG Maker


Apprendre
RPG Maker

Tutoriels
Guides
Making-of

Dans le
Forum

Section Entraide

Scripts: [XP] SE au volume variable / Scripts: [XP] Déplacements en (...) / Partenaires: Vidéo rewind 2024 / News: Les actualités de fin d'année / Jeux: Glixel en version complète / Chat

Bienvenue
visiteur !





Désactiver
la neige


publicité RPG Maker!

Statistiques

Liste des
membres


Contact

Mentions légales

386 connectés actuellement

30912439 visiteurs
depuis l'ouverture

2075 visiteurs
aujourd'hui



Barre de séparation

Partenaires

Indiexpo

Akademiya RPG Maker

Blog Alioune Fall

Fairy Tail Constellations

RPG Maker VX

Alex d'Or

Le Comptoir Du clickeur

Lunae - le bazar d'Emz0

Tous nos partenaires

Devenir
partenaire



forums

Index du forum > Entraide > Questions idiotes sur RM [PAS Script]

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

Reprise du message précédent:

Anton_ - posté le 04/05/2016 à 18:03:17 (1537 messages postés)

❤ 0

peut être en utilisant une variable genre "Last_choice"

Portion de code : Tout sélectionner

1
2
3
4
5
6
7
8
9
10
11
12
Choix multiple [...]
Si : Manger Frites
Last_choice = 1
(autres actions)
 
Si : Ouvrir menu
Last_choice = 2
(...)
 
Si : Pas ouvrir menu
Last_choice = 3
(...)



Raetribution | Megamike || tutos : 1 2 || Une bonne dose de maths pour la route


Suite du sujet:

Sou - posté le 05/05/2016 à 08:55:14 (396 messages postés)

❤ 0

On a jamais assez de munitions

Merci pour ta réponse rapide Anton_ :)

Mais je me suis mal exprimé du coup, car oui, on peut marqué l'endroit avec une variable comme tu l'as fais, mais comment forcer le positionnement du curseur?

Je suis Sou et c'est tout.


arttroy - posté le 05/05/2016 à 13:47:06 (2394 messages postés)

❤ 0

Just working

Créés un interrupteur "optionnal choice list", va ligne 153 du Window_Message et met ça à la place de la ligne (remplace x par le numéro de ton interrupteur):

Portion de code : Tout sélectionner

1
2
3
4
5
6
      if $game_switches[x] == true
        self.index = 1
      else
        self.index = 0
      end
 



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


Sou - posté le 05/05/2016 à 13:52:38 (396 messages postés)

❤ 0

On a jamais assez de munitions

Merci arttroy de ta réponse, et de son edit (oui j'ai vu ta première réponse :p).

Si je ne dis pas de bêtises, je vais pouvoir créer 4 interrupteurs (car 4 choix max), afin de recycler ta solution dans d'autre cas où j'aurai besoin d'un positionnement de curseur.

Merci encore :)

Edit:

Pourquoi un interrupteur, et pas une variable au fait?

=> Ta solution fonctionne au poil ;)

Je suis Sou et c'est tout.


arttroy - posté le 05/05/2016 à 14:23:27 (2394 messages postés)

❤ 0

Just working

Les deux fonctionnent mais si tu veux dupliquer le truc utilise plutôt une variable

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


Sou - posté le 05/05/2016 à 14:37:40 (396 messages postés)

❤ 0

On a jamais assez de munitions

Peux-tu me donner l'appel d'une variable via script stp?
C'est quelque chose comme var[x] je suppose^^

Edit: j'ai trouvé *_*

$game_variables[x]

Encore un merci pour la route arttroy :)

Je suis Sou et c'est tout.


arttroy - posté le 06/05/2016 à 16:29:13 (2394 messages postés)

❤ 0

Just working

Ah tu a été plus rapide à trouver que moi à te répondre ^^ Si tu jettes un oeil aux scripts tu verras que cette syntaxe est souvent utilisée :

$game_xx

genre :

$game_party.members[0] ou $game_party.leader pour définir le premier héros du groupe par exemple. Content d'avoir pu t'aider en tous cas.

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


Sou - posté le 09/05/2016 à 10:16:11 (396 messages postés)

❤ 0

On a jamais assez de munitions

C'est vrai, je m'en était aperçut mais je pose souvent des questions trop vite --'

Merci en tout cas, et tu aides souvent la communauté ça c'est pas nouveau ;)

Je suis Sou et c'est tout.


Cactus - posté le 27/05/2016 à 09:09:07 (681 messages postés)

❤ 0

Pikactus

Bonjour !


Support: RMVXace

Question:

Est-il possible de faire une compétence qui achève les ennemies ne possédant qu'1 pv ?

Explication:
=> Le joueur doit faire baisser la vie de l'ennemi a 1pv pour pouvoir l'achever avec une compétence spécial.

=> Impossible d'achever l'ennemi avec une attaque normal (les pv reste bloqué a 1)

=> Impossible d'enlever de la vie avec la compétence spécial tant que les pv du monstre sont au dessus de 1

Pour résumer il faut switcher d'attaque pour retirer le dernier pv .


Merci :sourire3


Ephy - posté le 27/05/2016 à 09:29:09 (30119 messages postés) - honor

❤ 0

[BIG SHOT]

Dans le calcul des formules de dégâts c'est certainement possible de faire un calcul avec les maxhp et les hp courants. De manière à ce qu'on soit à 1 seulement quand il reste 1 hp et zéro le reste du temps (ou un truc inférieur à 1 pour que ça soit ramené à 0).
Vite fait j'ai trouvé ça comme formule:

((maxhp-(currenthp-1))/maxhp.

Si currenthp > 1, le tout est toujours inférieur à 1. Si currenthp = 1, le résultat est égal à 1.
Après t'as juste à multiplier ça par les dégâts que tu veux faire.

Pour le reste de tes compétences il doit y avoir une formule similaire pour avoir le résultat contraire.



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


Cactus - posté le 27/05/2016 à 10:24:25 (681 messages postés)

❤ 0

Pikactus

Merci pour ta réponse Ephy
Donc j'ai fait ça:

Portion de code : Tout sélectionner

1
((b.mhp-(b.hp - 1))/b.mhp



Citation:

b=cible
mhp=Max hp
hp= hp courant



et j'ai le droit a un lorsque j'attaque

Citation:


Script 'Game_Battler' line 352: SyntaxError occured

unexpected $end, expecting ')'
( (b.mhp-(b.hp - 1) )/b.mhp



Apparemment y'a un truc qui bloque au niveau de la parenthèse :susp
j'ai testé en l’espaçant mais nop, ça bloque


Ephy - posté le 27/05/2016 à 10:33:41 (30119 messages postés) - honor

❤ 0

[BIG SHOT]

Ha nan je me suis juste foiré en fait, y'a une parenthèse en trop au début. Ça doit donner ça en fait:

Portion de code : Tout sélectionner

1
(b.mhp-(b.hp - 1))/b.mhp


J'ai pas testé dans RM en fait, juste par calcul avec quelques valeurs. Mais selon mes observations des formules de calcul, ça doit marcher nickel maintenant que c'est bien écrit.

D'ailleurs le message d'erreur l'explique clairement. La fin de la formule est fausse et il attend un ")".
(ça peut toujours servir de le savoir si jamais tu rencontre de nouveau ce souci).



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


Cactus - posté le 27/05/2016 à 10:53:31 (681 messages postés)

❤ 0

Pikactus

Ah mais oui !
Je sais pas comment j'ai fait pour ne pas voir la parenthèse en trop :doute5
Par contre si je comprend bien le code l'attaque ne fait pas de dégât.
Dsl j'ai vraiment du mal avec les formule de dégât :triste2


Ephy - posté le 27/05/2016 à 11:00:17 (30119 messages postés) - honor

❤ 0

[BIG SHOT]

En fait le code ne gère pas les dégâts de l'attaque. C'est un multiplicateur à appliquer aux dégâts de l'attaque.
Du genre ça:

Portion de code : Tout sélectionner

1
((b.mhp-(b.hp - 1))/b.mhp) * a.atk


Là, si l'ennemi a plus de 1pv, l'attaque fera 0*(attaque du perso) c'est à dire rien du tout. Si il reste juste 1pv à l'ennemi, l'attaque fera 1*(attaque du perso) soit des dégâts équivalents à l'attaque du perso.

Mais théoriquement en gardant juste

Portion de code : Tout sélectionner

1
((b.mhp-(b.hp - 1))/b.mhp)

l'attaque devrait faire 1 dégât si l'ennemi n'a qu'un pv.

Si j'ai bien compris ce que tu veux, c'est exactement ça.



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


Cactus - posté le 27/05/2016 à 11:13:49 (681 messages postés)

❤ 0

Pikactus

Je viens de tester ça fonctionne
Un grand MERCI Ephy pour tes réponses rapides et claires !
Ça me permet de comprendre un peu plus la logique du logiciel.


Ephy - posté le 27/05/2016 à 11:19:03 (30119 messages postés) - honor

❤ 0

[BIG SHOT]

De rien :p



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


Cactus - posté le 27/05/2016 à 23:10:17 (681 messages postés)

❤ 0

Pikactus

Par contre je ne vois vraiment pas comment faire l'inverse (attaque non létale)

Ça fait 2 heures que je me crame le cerveau (il est pas fait pour le calcul le pauvre :triste2)
J'ai essayé de plusieurs façons mais à chaque fois j'achevais la cible.
En faire j'ai du mal a recrée la condition "si la cible a plus de 1hp"

:triste2


arttroy - posté le 28/05/2016 à 00:00:52 (2394 messages postés)

❤ 0

Just working

(b.hp + 1)-b.hp

Comme ça ça te laissera pile un hp (genre fauchage dans pokemon).

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


Ephy - posté le 28/05/2016 à 00:10:22 (30119 messages postés) - honor

❤ 0

[BIG SHOT]

Essaye ça comme multiplicateur:

Portion de code : Tout sélectionner

1
[(b.hp/((b.mhp-(b.hp - 1)))-1), 1].min



Pour résumer, on divise les current hp par le calcul utilisé plus haut et on retire 1. Si current hp = 1, ça vaut 0. Si current hp >= 2, ça vaut 1 ou plus.
Après on utilise [a, b].min pour récupérer la valeur la plus petite entre a et b.
Ici a c'est notre gros calcul compliqué qui peut prendre des valeurs énormes et b est égal à 1.
Avec ça, si nos les hp sont à 1, a sera égal à 0 et le calcul sera égal à 0, si les hp >= 2, ça sera toujours égal à 1.

J'ai pas testé pour le zéro mais normalement ça devrait marcher.

A mon avis il y a un calcul plus simple mais le principal c'est que ça marche non?



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


Cactus - posté le 28/05/2016 à 00:33:42 (681 messages postés)

❤ 0

Pikactus

Merci pour vos reponses:
arttroy> ça marche pas, ça enlève 1hp par 1 hp e acheve la cible
L'attaque faux-chage de Pokémon se résumerait plus a ça:

Portion de code : Tout sélectionner

1
b.hp-1

non?
Ephy> Ah, c'est presque bon, j'ai test avec un ennemi de 5hp et une attaque de 1 de dégât ça marche mais sa vie ne descend pas en dessous de 3hp
avec un ennemi de 10hp la vie ne descend pas en dessous de 7


Sou - posté le 28/05/2016 à 00:56:50 (396 messages postés)

❤ 0

On a jamais assez de munitions

Bonsoir, je ne suis pas sous mv, mais j'aimerai comprendre, pour ta première question pourquoi ne pas faire une condition du type:
If hp=1
If interup attaque spéciale ON (ton attaque spéciale appel un évén qui switch l'interrupteur)
dgt = 1 (pour finir le dernier pv)
interrup attaque spéciale = Off
Else
dgt =0
Else
dgt = calcul normal

Et pour reprendre arttroy avec son:

Citation:

(b.hp + 1)-b.hp



Pourquoi pas plutôt:
hp - hp +1 ?

Désolé, je ne sais pas si j'ai bien saisie ta question, et comme je ne suis pas sous Mv du coup je dis peut-être des bêtises (en plus je vulgarise les calculs puisque je ne connais pas les termes mv).

Je suis Sou et c'est tout.


Ephy - posté le 28/05/2016 à 01:30:54 (30119 messages postés) - honor

❤ 0

[BIG SHOT]

Cactus> Essaye avec celle-ci:

Portion de code : Tout sélectionner

1
[(-(b.mhp/(b.hp*b.mhp))*10+10), 1].min


J'ai essayé sur un ennemi de 5 hp, ça fonctionne.
La précédente ne risquait pas de fonctionner en fait (bon déjà parce que j'avais oublié un morceau) parce que ça utilise le résultat du premier calcul comme diviseur. Or dans le premier calcul si les hp sont supérieurs à 1 le résultat vaut 0,quelquechose soit 0 pour RM. Donc en théorie ça fonctionne mais dans RM ça fait toujours zéro vu que les nombres à virgule sont tronqués.

Là... ben on a le même principe un peu. Et on fait *10 pour éviter les 0.quelquechose. Et +10 pour pas être en négatif.



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


arttroy - posté le 28/05/2016 à 12:05:00 (2394 messages postés)

❤ 0

Just working

Ah ouais ok maintenant que tu le dis c'est évident que ça le ferai pas... Désolé ^^

Content que tu ais eu de l'aide quand même.

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


Ephy - posté le 28/05/2016 à 13:30:50 (30119 messages postés) - honor

❤ 0

[BIG SHOT]

Sinon j'ai pas testé mais plus simplement:

Portion de code : Tout sélectionner

1
[b.hp-1, 1].min


Ça prend la plus petite valeur entre les hp actuels-1 et 1. Si les hp sont égaux à 1, 1-1=0. Sinon ça sera supérieur à 1 et le min prendra 1.

C'était vraiment bête en fait :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


Cactus - posté le 28/05/2016 à 13:58:30 (681 messages postés)

❤ 0

Pikactus

Oh merde ! :lol
La taille du calcul est tellement ridicule que j'ai failli m’étouffer.
Ça marche !
Mais a quoi correspond le .min? c'est une condition si une valeur est minimum ?

Encore merci Ephy ! et aussi a arttroy et Sou !


Ephy - posté le 28/05/2016 à 18:14:48 (30119 messages postés) - honor

❤ 0

[BIG SHOT]

En fait [a,b].min ça récupère juste la valeur minimum entre a et b. T'as pareil avec [a,b].max qui récupère la valeur maximum.
En général ça sert pour faire des seuils comme là.



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

Index du forum > Entraide > Questions idiotes sur RM [PAS Script]

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