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 15/05/2011 à 20:41:15 (2310 messages postés)
- - | | Effectivement, j'ai eu une idée, et elle était correcte.
En gros, suffit de refaire une def refresh, mais qui joue pas sur les @data ( pour pas devoir refaire le contenue à chaque fois, et donc gagner quelques frames ), et faire un tableau qui contiendrait les coordonnées du texte. En appelant la def créé au dessus, on rajouterais à la valeur du tableau un certain nombre, seulement si le curseur est dessus cette option.
En script ça donne ça :
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
| def refresh_command(id)
self.contents.clear
#Cette def doit être appeler en boucle pour mettre à jour le texte.
for i in 0...@item_max
if @data[i].id == id
draw_quest(i,1)
else
draw_quest(i)
end
end
end
def draw_quest(index,x_plus=0)
quest = @data[index]
y = index * 32
text = quest.name.to_s
w = self.contents.text_size(text).width
if x_plus != 0
@coord_x[index] -= x_plus
# Comme on fait défilé vers la gauche, faut jouer avec les -
if @coord_x[index] < -w
@coord_x[index] = w
# Pour remettre le texte à sa place
end
else
@coord_x[index] = 0
# Si le curseur est pas sur l'option, les coordonnées sont égales à 0
end
self.contents.draw_text(4+@coord_x[index] , y, w, 32, text, 0)
end
|
Sachant que j'ai initialiser @coord_x comme ça dans la def initialize :
1
2
3
4
| @coord_x = []
for i in 0...999
@coord_x[i] = 0
end |
|
( Je prend note de tout les commentaires, même si je n'y répond pas ) | Suite du sujet:
Hermoni -
posté le 16/05/2011 à 04:12:33 (279 messages postés)
| Shano | Pour ceux qui m'ont repondu, merci, meme si pas directement aidé ca m'a aiguillé et j'ai trouvé un autre moyen de regler ca.
|
Ni da an shindu, doral'dieb an thera. |
bubblebug -
posté le 21/05/2011 à 22:55:05 (384 messages postés)
| | Support: Rpg Maker XP
Question:
Comment mettre "attendre" (comme attendre x frame) en script ?
Car je voudrai modifier un script, mais il me faut mettre "attendre" !
Merci d'avance.
|
Berka -
posté le 21/05/2011 à 23:23:19 (493 messages postés)
| planchant sur un script | Bonsoir,
1
2
3
4
5
| ($latence_en_sec * Graphics.frame_rate).times{
Graphics.update
# ce que tu veux rafraichir
}
|
Tu mets dans la boucle tout ce que tu veux rafraichir afin de ne pas faire une attente "bloquante".
Bonne soirée,
Berka
|
Twitter: Pensées politiques et juridiques. Réflexions informatiques |
bubblebug -
posté le 22/05/2011 à 00:06:20 (384 messages postés)
| | Support: Rpg Maker XP
Question:
Je voudrai savoir comment vérifier si on est dans un choix (dans un message) en script !
|
Berka -
posté le 22/05/2011 à 00:46:59 (493 messages postés)
| planchant sur un script | Avant de poser une autre question (très vague, en passant), tu pourrais au moins prendre le temps de faire un petit commentaire, voire même, osons, un remerciement, pour la solution que je t'ai donnée. Ca fonctionne ? Ca t'a aidé ?
Pour ta seconde question, je vais te répondre d'une façon aussi développée que ta phrase:
1
| (Window_Message<Window_Selectable)#index |
Tout simplement.
Bonne nuit,
Berka
|
Twitter: Pensées politiques et juridiques. Réflexions informatiques |
bubblebug -
posté le 22/05/2011 à 09:39:33 (384 messages postés)
| | Merci pour t'es deux réponse.
T'on deuxième morceau de script a l'air de marché.
Mais le premier ne marche pas !
Merci encore pour les réponse rapide
|
Berka -
posté le 22/05/2011 à 12:30:14 (493 messages postés)
| planchant sur un script | Attends, tu as copié le 2nd code ? Normalement, tel quel, il ne devrait pas bugger mais il ne sert strictement à rien. C'était juste pour te montrer l'héritage de Window_Selectable sur Window_Message. Du coup tu peux récupérer l'attribut Window_Selectable#index via Window_Message pour trouver le choix sélectionné.
Pour le premier, il fonctionne, ca dépend de ce que tu souhaites rafraichir et attendre dans la boucle (les graphismes, la carte, le clavier, etc.).
Il faut toujours adapter,
Berka
|
Twitter: Pensées politiques et juridiques. Réflexions informatiques |
bubblebug -
posté le 22/05/2011 à 13:00:43 (384 messages postés)
| | Pour le deuxième code, j'avai deviné que je devai récuperer l'atribut "window_selectable".
Mais pour le deuxième code, je voudrai mettre attendre 3 frame/seconde (par exemple) avant de lancé une fonction:
"def terminate"
|
Strift -
posté le 22/05/2011 à 13:19:44 (210 messages postés)
| | "Window_Selectable" n'est pas un attribut de "Window_Message", c'est sa classe parente.
Cela signifie que Window_Message hérite de tous les attributs et méthodes de Window_Selectable. Ici l'attribut hérité qui t’intéresses est l'index.
Pour faire attendre x frames :
1
2
3
| x.times do
Graphics.update
end |
C'est pas très précis (ça risque de changer d'un PC à l'autre), donc tu peux reprendre la formule de Berka qui fait intervenir la latence et le taux de rafraîchissement.
|
En fait, non. |
Berka -
posté le 22/05/2011 à 13:56:25 (493 messages postés)
| planchant sur un script | En fait la latence c'est le délai d'attente recherché en secondes.
Edit:
Tiens, le lien de ma signature est rompu. Hop, c'est réparé.
|
Twitter: Pensées politiques et juridiques. Réflexions informatiques |
bubblebug -
posté le 22/05/2011 à 14:02:39 (384 messages postés)
| | Merci pour vos réponse, cela marche bien.
Encore merci
|
creme -
posté le 24/05/2011 à 19:13:07 (25 messages postés)
| Laulle | Support : RPGMAKER VX
Question : Alors voilà, j'ai un petit problème, plutôt une belle question conne, je ne trouve pas ceci dans mes tileset : http://www.pixelz.fr/4/c/9/33a82f3b9c44e049c1f4c4a6e1651.html
Après je ne sais pas si ce jeu a été fait sur le VX mais je ne le trouve vraiment pas... *honte honte*
|
Ephy -
posté le 24/05/2011 à 19:19:30 (30100 messages postés)
- | [BIG SHOT] | Ca n'a pas sa place dans ce topic mais je vais y répondre.
Le morceau de tile que tu montre là ne fait pas partie des RTP. Aucune chance que tu le trouve dans les ressources de base du logiciel.
D'ailleurs les autre non plus ne sont pas du RTP.
Pour avoir ce haut de mur, trouve un tileset sur internet et importe le (si tu sais pas faire, j'ai fait un tuto là dessus) ou demande directement à l'auteur du screen.
PS: ici 'est pour les question de RGSS et RGSS2 c'est à dire pour les scripts et le ruby
|
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 |
creme -
posté le 24/05/2011 à 19:22:25 (25 messages postés)
| Laulle | Ah, ok, d'accord merci. Et désolé, je commence dans RPGmaker et je ne connais pas tout le vocabulaire, je pensais que RGSS et RGSS2 c'étaient les noms de tous les RPGMAKER.
Merci de la réponse si rapide !
|
Le Docteur -
posté le 27/05/2011 à 20:01:38 (26 messages postés)
| Shiroi no Mahō : Shiroi Honō | Support :RMVX
Question :
Bonjour, j'ai un petit problème avec le script pour skiper l'écran titre : ICI
Le problème en lui même est que lorsque je lance le jeu, l'ecran reste noir, puis ferme tout seul.
J'ai regardé un peu mais je m'y connaît pas du tout en script. La seule chose que j'ai reussi à changer c'est les extension mise sur le script (fichiers en .rxdata, que j'ai ensuite mis avec .rvdata)
Si certaines personnes si connaissent, un peu d'aide ne serait pas de refus
|
Yukki Yukki Yukki ! | I'm evil, whatever you think. | Anciennement Le Docteur |
Berka -
posté le 27/05/2011 à 20:16:27 (493 messages postés)
| planchant sur un script | Tu peux essayer avec ce script de Woratana:
Pour l'utiliser, dans main, remplace :
1
| $scene = Scene_Title.new |
par
1
| $scene = Skip_Title.new |
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
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
| class Skip_Title < Scene_Base
MAP_ID = 2 # ID map de départ
START_XY = [8,7] # Position de départ
START_MEMBER = [1,2,3] # Equipe de départ
def get_party_member
if START_MEMBER != 0
$game_party.setup_starting_members_skip(START_MEMBER)
else
$game_party.setup_starting_members
end
end
def main
$BTEST ? battle_test : start
end
def start
load_database
create_game_objects
get_party_member
$game_map.setup(MAP_ID)
$game_player.moveto(START_XY[0],START_XY[1])
$game_player.refresh
$scene = Scene_Map.new
$game_map.autoplay
end
def load_database
$data_actors = load_data("Data/Actors.rvdata")
$data_classes = load_data("Data/Classes.rvdata")
$data_skills = load_data("Data/Skills.rvdata")
$data_items = load_data("Data/Items.rvdata")
$data_weapons = load_data("Data/Weapons.rvdata")
$data_armors = load_data("Data/Armors.rvdata")
$data_enemies = load_data("Data/Enemies.rvdata")
$data_troops = load_data("Data/Troops.rvdata")
$data_states = load_data("Data/States.rvdata")
$data_animations = load_data("Data/Animations.rvdata")
$data_common_events = load_data("Data/CommonEvents.rvdata")
$data_system = load_data("Data/System.rvdata")
$data_areas = load_data("Data/Areas.rvdata")
end
def load_bt_database
$data_actors = load_data("Data/BT_Actors.rvdata")
$data_classes = load_data("Data/BT_Classes.rvdata")
$data_skills = load_data("Data/BT_Skills.rvdata")
$data_items = load_data("Data/BT_Items.rvdata")
$data_weapons = load_data("Data/BT_Weapons.rvdata")
$data_armors = load_data("Data/BT_Armors.rvdata")
$data_enemies = load_data("Data/BT_Enemies.rvdata")
$data_troops = load_data("Data/BT_Troops.rvdata")
$data_states = load_data("Data/BT_States.rvdata")
$data_animations = load_data("Data/BT_Animations.rvdata")
$data_common_events = load_data("Data/BT_CommonEvents.rvdata")
$data_system = load_data("Data/BT_System.rvdata")
end
def create_game_objects
$game_temp = Game_Temp.new
$game_message = Game_Message.new
$game_system = Game_System.new
$game_switches = Game_Switches.new
$game_variables = Game_Variables.new
$game_self_switches = Game_SelfSwitches.new
$game_actors = Game_Actors.new
$game_party = Game_Party.new
$game_troop = Game_Troop.new
$game_map = Game_Map.new
$game_player = Game_Player.new
end
def battle_test
load_bt_database
create_game_objects
Graphics.frame_count = 0
$game_party.setup_battle_test_members
$game_troop.setup($data_system.test_troop_id)
$game_troop.can_escape = true
$game_system.battle_bgm.play
snapshot_for_background
$scene = Scene_Battle.new
end
end
class Game_Party
def setup_starting_members_skip(actor_list)
@actors = []
for i in actor_list
@actors.push(i)
end
end
end |
Bonne soirée,
Berka
|
Twitter: Pensées politiques et juridiques. Réflexions informatiques |
Le Docteur -
posté le 27/05/2011 à 20:52:47 (26 messages postés)
| Shiroi no Mahō : Shiroi Honō | Merci !
Alors ça évolue, maintenant ça quitte plus, à la place, j'ai une jolie erreur à la ligne 1 : " undefined superclass 'Scene_Base' "
Une idée pour corriger ça ?
Ah et puis aussi, dans le script, y a-t-il des choses à modifier en fonction de la BDD, de la map de départ, etc... ?
|
Yukki Yukki Yukki ! | I'm evil, whatever you think. | Anciennement Le Docteur |
Zeus81 -
posté le 27/05/2011 à 21:04:17 (11071 messages postés)
| | Faut placer le script tout en bas de la liste, dans les "Materials".
Par contre ce topic n'est pas vraiment fait pour ce genre de question, m'enfin...
|
Le Docteur -
posté le 27/05/2011 à 21:12:57 (26 messages postés)
| Shiroi no Mahō : Shiroi Honō | C'est pourtant ici les histoires de scripts, non ?
Sinon, merci Zeus ! Ca marche super bien maintenant !
|
Yukki Yukki Yukki ! | I'm evil, whatever you think. | Anciennement Le Docteur |
Zeus81 -
posté le 27/05/2011 à 21:54:02 (11071 messages postés)
| | Ici c'est les questions de programmation pour ceux qui créent leurs propres scripts.
|
Le Docteur -
posté le 28/05/2011 à 09:30:20 (26 messages postés)
| Shiroi no Mahō : Shiroi Honō | Ok, je retiendrais pour la prochaine fois
|
Yukki Yukki Yukki ! | I'm evil, whatever you think. | Anciennement Le Docteur |
Zeus81 -
posté le 30/05/2011 à 05:16:09 (11071 messages postés)
| | Désolé t'as beau essayer mais tu n'es absolument pas drôle.
|
Tampaxor -
posté le 30/05/2011 à 08:22:54 (10274 messages postés)
| | Ben poste dans le bon topic alors.
|
zou -
posté le 31/05/2011 à 17:29:19 (2197 messages postés)
| | Je rencontre une erreur lorsque je fais F12, il me dis "Stack level too deep"
et me renvois à la ligne 10 de ce script perso
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| class << Graphics
alias loading_freeze freeze
Loading = Sprite.new
Loading.bitmap = RPG::Cache.title("chargement")
Loading.z = 0xFFFF
def freeze
Loading.visible = true
loading_freeze
Loading.visible = false
end
end |
Il parait c'est une boucle infini (vu sur le net) mais là je pense pas...
|
Zeus81 -
posté le 31/05/2011 à 17:36:26 (11071 messages postés)
| | alias loading_freeze freeze unless $@
| 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 73Index du forum > Entraide > [Scripts] Petites questions connes sur les SCRIPTS!!
|