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", (...) / Tutos: Checklist de la composition (...) / Sorties: Dread Mac Farlane - episode 8 / Sorties: Dread Mac Farlane - episode 7 / Jeux: Ce qui vit Dessous / Chat

Bienvenue
visiteur !




publicité RPG Maker!

Statistiques

Liste des
membres


Contact

Mentions légales

597 connectés actuellement

29441112 visiteurs
depuis l'ouverture

7190 visiteurs
aujourd'hui



Barre de séparation

Partenaires

Indiexpo

Akademiya RPG Maker

Blog Alioune Fall

Fairy Tail Constellations

Level Up!

Planète Glutko

Leo-Games

Le Comptoir Du clickeur

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:

mack - posté le 22/10/2010 à 18:22:08 (2290 messages postés) - staff

❤ 0

Et bien non, a moins que je m'y soit mal pris ...
En faite, je sais pas trop comment expliquer =S.
Le sprite est un Character, il me sert comme Battler dans mon CBS.
Mais, lorsqu'on déplace un sprite, le point (0,0) est celui qui se trouve tout en haut à gauche.
Hors moi je voudrait que ce soit celui tout en bas au milieu. ( Celui du dessin quoi. )
Parce que, si je prend un monstre qui est trop large, comme le point de départ est en haut à droite ( Ou en bas à droite puisque j'ai réussie à le faire ), il ne sera pas très bien centré ( Voir pas du tout ).

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


Suite du sujet:

Zeus81 - posté le 22/10/2010 à 18:28:13 (11071 messages postés)

❤ 0

Un peu de logique, allons...
C'est :
self.x = 288 - @fw/2
Ou alors comme dit Lufia :
self.ox = @fw/2
self.x = 288


Mack - posté le 22/10/2010 à 18:32:27 (2290 messages postés) - staff

❤ 0

Effectivement, la seconde méthode marche.
Merci Zeus =P.

Edit :
Support : RMXP

Question 1 :
Comment faire pour vérifier que dans la map, il n’existe pas d'évents portant le nom "X".
J'ai essayer :

Portion de code : Tout sélectionner

1
2
3
4
5
6
7
for event in $game_map.events.values
if not event.name.include?("Fléche H+")
$game_party.gain_gold(1)
else
print "1"
end
end


Mais, il me donne l'argent tout en me "printant" 1.
Du coup .. Bah, j'sais pas comment faire.

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


Lufia - posté le 30/10/2010 à 19:22:11 (5792 messages postés)

❤ 0

Un Oniromancien. PVs 1, Attaque 0, Défense 0.

Bin forcément, si tu mets une condition dans une boucle, elle est vérifiée autant de fois qu'il y a d'éléments à parcourir.
J'dirais que c'est l'occasion d'utiliser any?, nan ?

Une signature ? Pour quoi faire ?


raho- - posté le 30/10/2010 à 19:29:04 (61 messages postés)

❤ 0

Effectivement, any, ou alors, plus "bourrin", avant la boucle, admettre une booléenne à false, et SSI le nom est équivalent à X, changer false en true, sinon rien (donc pas de Else).
Maintenant, je me prête a croire que Any est fortement plus élégant.


Mack - posté le 30/10/2010 à 19:37:23 (2290 messages postés) - staff

❤ 0

Hmm .. Et comment se sert on de Any ?
Parce que j'ai essayer des trucs genre :

Portion de code : Tout sélectionner

1
2
if event.name.any?.include?("Fléche H+")
if not event.name.iany?("Fléche H+")


Mais ça marche pas ^^".

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


Lufia - posté le 30/10/2010 à 19:52:00 (5792 messages postés)

❤ 0

Un Oniromancien. PVs 1, Attaque 0, Défense 0.

if $game_map.events.values.any? { |e| ... }
...
end

Une signature ? Pour quoi faire ?


Mack - posté le 30/10/2010 à 20:15:40 (2290 messages postés) - staff

❤ 0

Effectivement, ça marche =P.
Merci bien.

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


daysdreaming - posté le 05/11/2010 à 03:47:52 (7 messages postés)

❤ 0

juste pour savoir, est ce qu'il y'a un BON logiciel de création de character pour rpg maker XP ? parce chara maker :/ (meme de carte tant qu'a faire!):F

All you have to do is listen to my soul and the world is gonna smile (8)


Tata Monos - posté le 05/11/2010 à 08:25:14 (28 messages postés)

❤ 0

Compte Non utilisé

Non.


zou - posté le 25/11/2010 à 17:47:52 (2197 messages postés)

❤ 0

Support : RMXP

Question 1 :

Portion de code : Tout sélectionner

1
2
3
4
5
6
 
def aléa(max)
    @var_aléa.rand(max)
    return @var_aléa
end
 


Lorsque je lance la fonction aléa(10) (qui est dans Game_Character),
il me lance un message :
private methode 'rand'' called for 0: Fixnum
Merci


Kaila - posté le 25/11/2010 à 18:18:44 (3617 messages postés)

❤ 0

Hmmm ?

Portion de code : Tout sélectionner

1
2
3
4
def aléa(max)
  @var_aléa = rand(max)
  return @var_aléa
end



Everything is better with zombies.


zou - posté le 25/11/2010 à 18:22:31 (2197 messages postés)

❤ 0

a ok , c'est tout bête en plus, merci

EDIT :
XP, SCRIPT
Bonsoir, petite demande pour savoir si il y a un moyen de savoir si un carreau en x et y est passable sans comptabiliser les events, juste la passabilité.
Merci


Zeus81 - posté le 29/11/2010 à 20:02:30 (11071 messages postés)

❤ 0

$game_map.passable?(x, y, 0)


zou - posté le 29/11/2010 à 20:55:56 (2197 messages postés)

❤ 0

Merci, il suffisait juste de mettre un 0 comme argument :)


Sansa - posté le 21/12/2010 à 02:25:09 (1436 messages postés)

❤ 0

RMXP

Question 1 : [Résolu]

Je veux créer des nouvelles stats pour le personnages il y a déjà: (hp, sp, exp) et par exemple je pourrais rajouter (moral, valeur, karma) Je pense savoir de ou vien l'erreur mais je suis pas sûr...

Portion de code : Tout sélectionner

1
2
3
4
 
#Game_Actor 
#Ligne 68 = création de la nouvelle variable
@moral = 0



Portion de code : Tout sélectionner

1
2
3
4
5
6
7
8
9
 
#Game_Actor 
#Ligne 733 = création des calcules pour avoir la valeur de la variable
def moral(actor)
#Le moral est contrôler par un calcule que j'ai pas encore écris au complet, 
#mais il doit contenir l'hp présent du personnage et l'hp total, ainsi que l'sp....
    @moral = actor.hp * actor.maxhp #si je remplace ça par un chiffre ça marche donc
#J'imagine que l'erreur vien de la.  
end



Portion de code : Tout sélectionner

1
2
3
4
5
6
7
8
#Window_Base:
#Ligne 270 = creation du code pour faire apparaitre la variable
def draw_actor_moral(actor, x, y)
    self.contents.font.color = system_color
    self.contents.draw_text(x, y, 50, 32, "Moral :")
    self.contents.font.color = normal_color
    self.contents.draw_text(x, y, 48, 32, actor.moral.to_s, 2)
  end



Portion de code : Tout sélectionner

1
2
3
#Window_Status
#Ligne 39 = affichage de la nouvelle variable...
draw_actor_moral(@actor, 96, 432)




l'erreur en tant que tel me dit que ya un argument error 0 of 1 a 274 dans le window_base, dans le fond à

Portion de code : Tout sélectionner

1
self.contents.draw_text(x, y, 48, 32, actor.moral.to_s, 2)

... Mais cette portion du code a l'air correct.




Question 2 : [Résolu]

J'ai créer un code pour calculer le taux de réussite que le personnage à pour esquiver un coup dans le Game_Actor:

Portion de code : Tout sélectionner

1
2
3
4
5
6
7
8
 
def esquive #8 * self.agi / attacker.dex + self.eva
    n = 8 * 
    $data_actors[@actor_id].parameters[4, @level] /
    (5.5 * [[level, $data_actors[@actor_id].final_level].min, 1].max + 55)
    return sprintf("%.2f", n)
  end
 



Je sais, ça l'air un peu bizzare, mais il marche parfaitement bien. Enfait il manque juste le pourcentage accumulé par les objets genreee le bonus d'esquive d'une armur.

J'ai essayer pleins de choses comme (actor.eva),(actor.base_eva),($data_actors[@actor_id].eva),etc... Mais je ne trouve pas la formule :X

En gros c'est supposer donner de quoi du genre:

Portion de code : Tout sélectionner

1
2
3
4
5
6
7
8
9
 
def esquive #8 * self.agi / attacker.dex + self.eva
    n = 8 * 
    $data_actors[@actor_id].parameters[4, @level] /
    (5.5 * [[level, $data_actors[@actor_id].final_level].min, 1].max + 55) +
    actor.eva.... 
  return sprintf("%.2f", n)
  end
 



Le ''eva'' en question que je cherche a rajouter c'est lui (bin je pense)

Portion de code : Tout sélectionner

1
2
3
4
5
6
7
8
9
10
11
def base_eva
    armor1 = $data_armors[@armor1_id]
    armor2 = $data_armors[@armor2_id]
    armor3 = $data_armors[@armor3_id]
    armor4 = $data_armors[@armor4_id]
    eva1 = armor1 != nil ? armor1.eva : 0
    eva2 = armor2 != nil ? armor2.eva : 0
    eva3 = armor3 != nil ? armor3.eva : 0
    eva4 = armor4 != nil ? armor4.eva : 0
    return eva1 + eva2 + eva3 + eva4
  end



Trouvable à 335 dans Game_Actor.


Kaila - posté le 21/12/2010 à 11:47:50 (3617 messages postés)

❤ 0

Hmmm ?

Citation:

argument error 0 of 1

Citation:

actor.moral.to_s

Citation:

def moral(actor)

C'est donc normal, tu ne donnes aucun argument à ta def moral alors qu'elle en attend un de type 'actor'.
Ceci dit, je te conseilles de faire ta def moral comme ceci:

Portion de code : Tout sélectionner

1
2
3
def moral
  return @hp*maxhp
end



Et pas besoin de rajouter le "@moral = 0".

Everything is better with zombies.


Autres - posté le 21/12/2010 à 18:34:21 (470 messages postés)

❤ 0

Support : RMVX

Question 1 : RESOLUE
Comment mémoriser dans une variable (de script) le nombre d'armes/armures/casques... équipées possédées par le héros (en clair : si le héros est équipé avec une épée et qu'il en a une autre dans son sac comment mémoriser cette valeur (2) dans une variable) ?
SOLUTION :

Portion de code : Tout sélectionner

1
2
3
4
5
id = 2   # id de l'arme dans la BDD
nombre = $game_party.item_number($data_weapons[id])
for actor in $game_party.members
  nombre += 1 if actor.weapon_id == id
end


Merci pour votre aide !

On se couche moins con chaque soir... enfin, en principe. Le Pac-Nor !


Sansa - posté le 25/12/2010 à 04:43:51 (1436 messages postés)

❤ 0

Support : RMVX

Question 1 : [Résolu]
Creer une condition dans une classe ''window'' pour savoir quel ''actor'' décrire genre:

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
 
#==============================================================================
# ** Window_Status
#------------------------------------------------------------------------------
#  This window displays full status specs on the status screen.
#==============================================================================
 
class Status_Hero < Window_Base
  #--------------------------------------------------------------------------
  # * Object Initialization
  #     actor : actor
  #--------------------------------------------------------------------------
  def initialize(actor)
    super(0, 0, 544, 416)
    self.opacity = 0
    self.z = 210
    @actor = actor
    self.contents.font.color = system_color
    refresh
  end
  #--------------------------------------------------------------------------
  # * Refresh
  #--------------------------------------------------------------------------
  def refresh
    self.contents.clear
    if @actor = 0           #Y'est là mon problème, je veux donner la description d'un personnage
#uniquement si c'est genre ''lui'' qui est affiché dans le menu status.
#Pi si c'est lui bin ça s'envas écrire l'info plus bas. Mais jtrouve pas la bonne variable...
#... ou simplement la bonne façon de l'écrire.
      draw_actor0(0, 0)
    elsif @actor = 1
      draw_actor1(0, 0)
    elsif @actor = 2
      draw_actor2(0, 0)
    elsif @actor = 3
      draw_actor3(0, 0)
    else
    end
  end
  #--------------------------------------------------------------------------
  # * Draw draw_actor0
  #--------------------------------------------------------------------------
  def draw_actor0(x, y)
    self.contents.font.size = 16
    self.contents.draw_text(0, 0 + WLH * 0 - (PIXELPRECISION * 0), 180, WLH,
    "Petit Cannard Jaune")
    #--------------------------------------------------------------------------
    # * Actor Description
    #--------------------------------------------------------------------------
    self.contents.draw_text(0, 0 + WLH * 0 - (PIXELPRECISION * 0), 180, WLH,
    "Il est petit et jaune son but c'est de nager, mais y'est mort too bad.")
  end
  #--------------------------------------------------------------------------
  # * Draw draw_actor1
  #--------------------------------------------------------------------------
  def draw_actor1(x, y)
  end
  #--------------------------------------------------------------------------
  # * Draw draw_actor2
  #--------------------------------------------------------------------------
  def draw_actor2(x, y)
  end
  #--------------------------------------------------------------------------
  # * Draw draw_actor3
  #--------------------------------------------------------------------------
  def draw_actor3(x, y)
  end
end



Support : RMVX

Question 2 : [Résolu]
Parreil, une autre condition, mais ici c'est pour faire apparaitre le texte ''state'' avant les effets
sur le statut du personnage et si le personnage a 0 ''states" bin ya un texte qui dis qu'il est pas un extraterrestre ou whatevere. Seul problème, la condition :X ...

Portion de code : Tout sélectionner

1
2
3
4
5
6
7
8
9
10
11
12
13
 
def draw_actor_state(actor, x, y, width = 96)
    count = 0
    self.contents.draw_text(x, y, 180, WLH, "STATE")
    for state in actor.states
      draw_icon(state.icon_index, x + 64 + (24 * count), y)
      count += 1
      break if (24 * count > width - 24)
      if count == 0 #Ma condition qui marche jamais è_é.
        self.contents.draw_text(x + 64, y, 180, WLH, "NORMAL")
      end
    end
  end




zou - posté le 25/12/2010 à 14:41:47 (2197 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
 
def draw_actor_state(actor, x, y, width = 96)
    count = 0
    self.contents.draw_text(x, y, 180, WLH, "STATE")
    for state in actor.states
      draw_icon(state.icon_index, x + 64 + (24 * count), y)
      break if (24 * count > width - 24)
      if count == 0 #Ma condition qui marche jamais è_é.
        self.contents.draw_text(x + 64, y, 180, WLH, "NORMAL")
      end
      count += 1
    end
  end
end
 


count placé avant donc forcement égale à 1 minimum


Sansa - posté le 25/12/2010 à 16:54:48 (1436 messages postés)

❤ 0

Nan, marche pas. Par contre j'ai trouvé, fallait mettre des true pi des falses:

Portion de code : Tout sélectionner

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
def draw_actor_state(actor, x, y, width = 96)
    count = 0
    @didyouseethatwalkingrockthatwasaskingforthemcdonaldwellididnt = TRUE
    self.contents.draw_text(x, y, 180, WLH, "STATE")
    for state in actor.states
      draw_icon(state.icon_index, x + 64 + (24 * count), y)
      count += 1
      break if (24 * count > width - 24)
      @didyouseethatwalkingrockthatwasaskingforthemcdonaldwellididnt = FALSE
    end
    if @didyouseethatwalkingrockthatwasaskingforthemcdonaldwellididnt == TRUE
      self.contents.draw_text(x + 64, y, 180, WLH, "NORMAL")
    end
  end




Zeus81 - posté le 25/12/2010 à 22:33:50 (11071 messages postés)

❤ 0

Citation:

Creer une condition dans une classe ''window'' pour savoir quel ''actor'' décrire genre:


Portion de code : Tout sélectionner

1
2
3
4
5
6
7
8
9
10
11
12
case actor.id
when 0
  ...
when 1
  ...
when 2
  ...
when 3
  ...
else
  ...
end




patton - posté le 27/12/2010 à 21:09:03 (35 messages postés)

❤ 0

Support : RMXP

Question 1 : [/color]

Salut, je voudrais trouver une écriture qui me permette simplement de cumuler dans une variable les .hit_rate des statuts infligé a 1 hero.

Pour faire un petit jeu d'habilité. Du genre si le hero [ID] en état "mort", sa chance de réussite est de 0. (Ça surement!!).
Mais si en état "Bourré de la veille" + état "pâteux" + état "grosse fatigue" quelle sont ses chances de réussir une attaque.?

Ex:
$game_variables[389] = $game_party.actors[0].stats.hit_rate... (je sais c'est nul!)

En gros pour éviter de faire se genre de choses:
Si Hero[ID] est sous état "Bourré de la veille"
$game_variables[389] += $data_states["Bourré de la veille"].hit_rate...ect

Ça fait un t'y bout de temps que je cherche. De plus je suis sur que la réponse m'ouvrirait de nouveau horizon:lol

Merci d'avance.

Réponse pour:

Autres a dit:


[color=yellow]Support : RMVX

Question 1 :
Comment mémoriser dans une variable (de script) le nombre d\'armes/armures/casques... équipées possédées par le héros (en clair : si le héros est équipé avec une épée et qu\'il en a une autre dans son sac comment mémoriser cette valeur (2) dans une variable) ?
Merci pour votre aide !



Ben! j\'espère que j\'ai tous compris^^

Portion de code : Tout sélectionner

1
$game_variables[200] = $game_party.weapon_number(ID)



Par contre je ne sais plus si l\'arme équipé est compté ou pas!?
A suivre...


Zeus81 - posté le 28/12/2010 à 19:28:48 (11071 messages postés)

❤ 0

$game_party.actors[0].hit

Tu sais ce genre de chose ça se devine pas, suffit d'aller voir les fonctions de Game_Actor / Game_Battller pour trouver ce qu'on cherche.


Timo - posté le 28/12/2010 à 20:00:49 (822 messages postés)

❤ 0

Support : RMXP

Question 1 :
Dans quel script (et à quel ligne si possible) je peux retirer l'option "attaquer" pour les combat par défaut ???


zou - posté le 28/12/2010 à 21:41:33 (2197 messages postés)

❤ 0

Bonsoir, ceci, n'est pas un problème mais plutôt une question :
dans ce script

Portion de code : Tout sélectionner

1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
 
self.x = @picture.x
    self.y = @picture.y
    self.z = @picture.number
    # Set zoom rate, opacity level, and blend method
    self.zoom_x = @picture.zoom_x / 100.0
    self.zoom_y = @picture.zoom_y / 100.0
    self.opacity = @picture.opacity
    self.blend_type = @picture.blend_type
    # Set rotation angle and color tone
    self.angle = @picture.angle
    self.tone = @picture.tone
 



A quoi sert le "self", pourquoi ne pas mettre @ ?

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