Sujet: Re: Marché de Biward [Fermé aux demandes] Mer 30 Juin 2010 - 17:04
Si tu regarde bien le script, ça peut se configurer !
Tabbou
Habitant Lv.6
Age : 28 Inscrit le : 15/02/2010 Messages : 117
Sujet: Re: Marché de Biward [Fermé aux demandes] Mer 30 Juin 2010 - 17:08
Désolé pour le flood Biward ( et surtout les modérateurs/trices) à n3m0: le problème c'est que je ne sait pas le faire U_U alors toi si tu sait ben envoie le moi par mp pour éviter le flood.
----Roxxor----
Voyageur Lv.10
Age : 27 Inscrit le : 08/05/2010 Messages : 383
Sujet: Re: Marché de Biward [Fermé aux demandes] Mer 30 Juin 2010 - 17:26
Biward => Je me vois pas dans "demandes en cours", je t'ai envoyé la démo par mp il y a 2 jours et tu réponds pas(ou alors tu vois pas le mp briller en vert mais si c'est ça, c'est grave ^^). Si tu veux pas faire ce script, dis le moi direct, ça m'évite de perdre du temps.
rockrevenchy
Poulet carnivore Lv.2
Age : 31 Inscrit le : 19/02/2010 Messages : 12
Sujet: Re: Marché de Biward [Fermé aux demandes] Jeu 1 Juil 2010 - 5:56
(désolé du temps pour le post je n'était pas là aujourd'hui) oui j'avoue que j'ai oublié de spécifier le type de tenkentai (et c'en est bien j'ai vérifier) sinon pour biward: bah ben pas grave je trouverai bien quelque chose ^^
Magi
Mage Lv.11
Age : 30 Inscrit le : 20/05/2010 Messages : 542
Sujet: Re: Marché de Biward [Fermé aux demandes] Jeu 1 Juil 2010 - 8:50
tiens je viens de remarquer que je ne suis pas dans les demandes en cours non plus ! Tu sais si tu veux pas le faire ou que t'y arrive pas dit le moi que je me fasses pas de faux espoir !
Biward
Age : 28 Inscrit le : 30/12/2009 Messages : 1067
Sujet: Re: Marché de Biward [Fermé aux demandes] Jeu 1 Juil 2010 - 15:38
Voici ton script Tabbou : script :
Spoiler:
Code:
module BI module FAMILIER Familier_ID = 4 # Mettez ici l'id du familier qui vous suivera ! end end
class Game_Player #-------------------------------------------------------------------------- # * Move Down # turn_enabled : a flag permits direction change on that spot #-------------------------------------------------------------------------- def move_down(turn_enabled = true) super(turn_enabled) end #-------------------------------------------------------------------------- # * Move Left # turn_enabled : a flag permits direction change on that spot #-------------------------------------------------------------------------- def move_left(turn_enabled = true) super(turn_enabled) end #-------------------------------------------------------------------------- # * Move Right # turn_enabled : a flag permits direction change on that spot #-------------------------------------------------------------------------- def move_right(turn_enabled = true) super(turn_enabled) end #-------------------------------------------------------------------------- # * Move up # turn_enabled : a flag permits direction change on that spot #-------------------------------------------------------------------------- def move_up(turn_enabled = true) super(turn_enabled) end #-------------------------------------------------------------------------- # * Move Lower Left #-------------------------------------------------------------------------- def move_lower_left super end #-------------------------------------------------------------------------- # * Move Lower Right #-------------------------------------------------------------------------- def move_lower_right super end #-------------------------------------------------------------------------- # * Move Upper Left #-------------------------------------------------------------------------- def move_upper_left super end #-------------------------------------------------------------------------- # * Move Upper Right #-------------------------------------------------------------------------- def move_upper_right super end end class Game_Follower < Game_Character #-------------------------------------------------------------------------- # * Public Instance Variables #-------------------------------------------------------------------------- attr_reader :actor attr_accessor :move_speed #-------------------------------------------------------------------------- # * Object Initialization #-------------------------------------------------------------------------- def initialize(actor) super() @through = true @actor = actor end #-------------------------------------------------------------------------- # * Set Actor #-------------------------------------------------------------------------- def actor=(actor) @actor = actor setup end #-------------------------------------------------------------------------- # * Setup #-------------------------------------------------------------------------- def setup if @actor != nil @character_name = $game_actors[@actor].character_name @character_index = $game_actors[@actor].character_index else @character_name = "" @character_index = 0 end @opacity = 255 @blend_type = 0 @priority_type = 1 end #-------------------------------------------------------------------------- # * Screen Z #-------------------------------------------------------------------------- def screen_z if $game_player.x == @x and $game_player.y == @y return $game_player.screen_z - 1 end super end #-------------------------------------------------------------------------- # * Same Position Starting Determinant (Disabled) #-------------------------------------------------------------------------- def check_event_trigger_here(triggers) result = false return result end #-------------------------------------------------------------------------- # * Front Envent Starting Determinant (Disabled) #-------------------------------------------------------------------------- def check_event_trigger_there(triggers) result = false return result end #-------------------------------------------------------------------------- # * Touch Event Starting Determinant (Disabled) #-------------------------------------------------------------------------- def check_event_trigger_touch(x, y) result = false return result end end class Spriteset_Map alias_method :spriteset_map_create_characters, :create_characters def create_characters spriteset_map_create_characters $game_party.followers.each do |char| @character_sprites << Sprite_Character.new(@viewport1, char) end end end class Game_Party #-------------------------------------------------------------------------- # * Constants #-------------------------------------------------------------------------- MAX_SIZE = 2 CATERPILLAR = 2 #-------------------------------------------------------------------------- # * Public Instance Variables #-------------------------------------------------------------------------- attr_reader :followers #-------------------------------------------------------------------------- # * Object Initialization #-------------------------------------------------------------------------- alias_method :trick_caterpillar_party_initialize, :initialize def initialize trick_caterpillar_party_initialize @followers = Array.new(MAX_SIZE - 1) {Game_Follower.new(nil)} @move_list = [] end #-------------------------------------------------------------------------- # * Update Followers #-------------------------------------------------------------------------- def update_followers flag = $game_player.transparent || $game_switches[CATERPILLAR] @followers.each_with_index do |char, i| char.actor = @actors[BI::FAMILIER::Familier_ID - 1] char.move_speed = $game_player.move_speed if $game_player.dash? char.move_speed += 1 end char.update char.transparent = flag end end #-------------------------------------------------------------------------- # * Move To Party #-------------------------------------------------------------------------- def moveto_party(x, y) @followers.each {|char| char.moveto(x, y)} @move_list.clear end #-------------------------------------------------------------------------- # * Move Party #-------------------------------------------------------------------------- def move_party @move_list.each_index do |i| if @followers[i] == nil @move_list[i...@move_list.size] = nil next end case @move_list[i].type when 2 @followers[i].move_down when 4 @followers[i].move_left when 6 @followers[i].move_right when 8 @followers[i].move_up when 1 @followers[i].move_lower_left when 3 @followers[i].move_lower_right when 7 @followers[i].move_upper_left when 9 @followers[i].move_upper_right when 5 @followers[i].jump end end end #-------------------------------------------------------------------------- # * Add Move List #-------------------------------------------------------------------------- def update_move(type, *args) move_party @move_list.unshift(Game_MoveListElement.new(type, args)) end end class Game_MoveListElement #-------------------------------------------------------------------------- # * Object Initialization #-------------------------------------------------------------------------- def initialize(type, args) @type = type @args = args end #-------------------------------------------------------------------------- # * Type #-------------------------------------------------------------------------- def type return @type end #-------------------------------------------------------------------------- # * Args #-------------------------------------------------------------------------- def args return @args end end class Game_Player #-------------------------------------------------------------------------- # * Public Instance Variables #-------------------------------------------------------------------------- attr_reader :move_speed #-------------------------------------------------------------------------- # * Update #-------------------------------------------------------------------------- alias_method :trick_caterpillar_player_update, :update def update $game_party.update_followers trick_caterpillar_player_update end #-------------------------------------------------------------------------- # * Moveto #-------------------------------------------------------------------------- alias_method :trick_caterpillar_player_moveto, :moveto def moveto(x, y) $game_party.moveto_party(x, y) trick_caterpillar_player_moveto(x, y) end #-------------------------------------------------------------------------- # * Move Down #-------------------------------------------------------------------------- alias_method :trick_caterpillar_player_move_down, :move_down def move_down(turn_enabled = true) if passable?(@x, @y+1) $game_party.update_move(2, turn_enabled) end trick_caterpillar_player_move_down(turn_enabled) end #-------------------------------------------------------------------------- # * Move Left #-------------------------------------------------------------------------- alias_method :trick_caterpillar_player_move_left, :move_left def move_left(turn_enabled = true) if passable?(@x-1, @y) $game_party.update_move(4, turn_enabled) end trick_caterpillar_player_move_left(turn_enabled) end #-------------------------------------------------------------------------- # * Move Right #-------------------------------------------------------------------------- alias_method :trick_caterpillar_player_move_right, :move_right def move_right(turn_enabled = true) if passable?(@x+1, @y) $game_party.update_move(6, turn_enabled) end trick_caterpillar_player_move_right(turn_enabled) end #-------------------------------------------------------------------------- # * Move Up #-------------------------------------------------------------------------- alias_method :trick_caterpillar_player_move_up, :move_up def move_up(turn_enabled = true) if passable?(@x, @y-1) $game_party.update_move(8, turn_enabled) end trick_caterpillar_player_move_up(turn_enabled) end #-------------------------------------------------------------------------- # * Move Lower Left #-------------------------------------------------------------------------- alias_method :trick_caterpillar_player_move_lower_left, :move_lower_left def move_lower_left if passable?(@x - 1, @y) and passable?(@x, @y + 1) $game_party.update_move(1) end trick_caterpillar_player_move_lower_left end #-------------------------------------------------------------------------- # * Move Lower Right #-------------------------------------------------------------------------- alias_method :trick_caterpillar_player_move_lower_right, :move_lower_right def move_lower_right if passable?(@x + 1, @y) and passable?(@x, @y + 1) $game_party.update_move(3) end trick_caterpillar_player_move_lower_right end #-------------------------------------------------------------------------- # * Move Upper Left #-------------------------------------------------------------------------- alias_method :trick_caterpillar_player_move_upper_left, :move_upper_left def move_upper_left if passable?(@x - 1, @y) and passable?(@x, @y - 1) $game_party.update_move(7) end trick_caterpillar_player_move_upper_left end #-------------------------------------------------------------------------- # * Move Upper Right #-------------------------------------------------------------------------- alias_method :trick_caterpillar_player_move_upper_right, :move_upper_right def move_upper_right if passable?(@x + 1, @y) and passable?(@x, @y - 1) $game_party.update_move(9) end trick_caterpillar_player_move_upper_right end #-------------------------------------------------------------------------- # * Jump #-------------------------------------------------------------------------- alias_method :trick_caterpillar_player_jump, :jump def jump(x_plus, y_plus) new_x = @x + x_plus new_y = @y + y_plus if (x_plus == 0 and y_plus == 0) or passable?(new_x, new_y) $game_party.update_move(5, x_plus, y_plus) end trick_caterpillar_player_jump(x_plus, y_plus) end end########### ########### ###########
@> ----Roxxor ---- → J'ai déjà afficher les points gagnés.
@> Mage → Le tient et dernier sur la liste...sorry
Biward Biward
Tabbou
Habitant Lv.6
Age : 28 Inscrit le : 15/02/2010 Messages : 117
Sujet: Re: Marché de Biward [Fermé aux demandes] Jeu 1 Juil 2010 - 18:21
Merci Biward je n'avais vraiment besoin. EDIT: Il faut modifier quoi pour changer celui qui suit le héros? EDIT2: Non c'est bon laisse tomber je viens de trouver Biward
Dernière édition par Tabbou le Jeu 1 Juil 2010 - 18:59, édité 1 fois
Garruk
Aventurier Lv.16
Age : 40 Inscrit le : 03/09/2009 Messages : 1503
Sujet: Re: Marché de Biward [Fermé aux demandes] Jeu 1 Juil 2010 - 18:49
Biward j'ai testé le script du djinn et bug ...
Quand j'ai voulut prendre mon niveau 2 ou 3 ça a planté. De plus quand je veux m'équiper je ne vois pas la différence que fournissent les armes ...
Biward
Age : 28 Inscrit le : 30/12/2009 Messages : 1067
Sujet: Re: Marché de Biward [Fermé aux demandes] Jeu 1 Juil 2010 - 20:44
@> Tabbou → Ok
@> CloudStrife → Encore !?! Je vais voir Mais les demande des clients avec une carte client passent d'abord u_u
@> ----Roxxor---- → Voilà ton script :
Modification Rapport de Combat
Screens :
Spoiler:
Script : LIEN
Biward
----Roxxor----
Voyageur Lv.10
Age : 27 Inscrit le : 08/05/2010 Messages : 383
Sujet: Re: Marché de Biward [Fermé aux demandes] Jeu 1 Juil 2010 - 21:10
Merci Biward, je teste. Edit : C'est exactement ce que je voulais mais il y a juste un petit truc que je ne comprend pas : - J'ai testé un combat avec 4 slimes et sur les 4 lignes du tableau, il y a marqué : slime + 1 : 1 slime + 1 : 2 slime + 1 : 3 slime + 1 : 4 Y'a pas moyen de mettre "slime +4 :4" ? A part ça c'est exellent
Biward
Age : 28 Inscrit le : 30/12/2009 Messages : 1067
Sujet: Re: Marché de Biward [Fermé aux demandes] Jeu 1 Juil 2010 - 22:08
J'ai déjà esayer mais vite fait alors...je peux reessayer
Biward
Magi
Mage Lv.11
Age : 30 Inscrit le : 20/05/2010 Messages : 542
Sujet: Re: Marché de Biward [Fermé aux demandes] Ven 2 Juil 2010 - 9:31
C'est pas grave si je suis dernière sur la liste, tant que tu traites ma demande ca va ^^ J'ai eu peur que tu avais abandonné alors qe c'est trés urggent, je peux pas mettre ma démo sans la correction ! Au cas ou je te redonne ce qu'il faut changer en spoiler, meme si je pense que t'as compris et je mets ce que j'ai compris du script ^^
Spoiler:
Il faut que les barres de A s'affiche quand je suis A et les barres de B s'affiche quand je suis B, mais surtout que si A est touchés les HP dans la barre diminue (ca ca marche normalement), mais que si je change de perso et que je me mets B, la barre de HP si je suis touchés doit diminuer (ce qui ne marche pas). Pareil pour la barre de MP, et d'XP quand A gagne un niveau ou B. Un truc que j'ai remarqué qui peut peut être t'aider, dans le script tout est cinfiguré pour le joueur 1 si j'ai bien compris je pense qu'il faut changer les "$game_actors[1].attack_effect(attacker_status)"(dans l'ABS) ou les trucs comme ca, apres je sais pas comment ^^". En tout cas il faudrait si tu peux le configurer au moins pour 2 joueurs, ou si t'y arrive pour autant de joueurs qu'on veut.
Voilà ^^ Merci encore ^^
Biward
Age : 28 Inscrit le : 30/12/2009 Messages : 1067
Sujet: Re: Marché de Biward [Fermé aux demandes] Ven 2 Juil 2010 - 15:00
@> mage → Moi, même avec le PHS ça marche U_u
@> CloudStrife → Voici pour toi :
Victory_Music
Permet de ne jouer la musique de victoire des combats que sur quelles que maps !!
Script : LIEN
J'ai corrigé pour le Djinn Va de nouveau voir le lien
Biward
Garruk
Aventurier Lv.16
Age : 40 Inscrit le : 03/09/2009 Messages : 1503
Sujet: Re: Marché de Biward [Fermé aux demandes] Ven 2 Juil 2010 - 19:37
D'accord je vais voir et je fais rapport. J'éditerais ce post si personne ne post après moi. =)
PS/ Je voulais savoir également ou ça en était pour le bestiaire et le menu ? Voilà.
EDIT: Pour l'arrêt de la musique en combat.
Ligne 31
Spoiler:
class Scene_Battle < Scene_ Base
Magi
Mage Lv.11
Age : 30 Inscrit le : 20/05/2010 Messages : 542
Sujet: Re: Marché de Biward [Fermé aux demandes] Ven 2 Juil 2010 - 21:01
C'est bon j'ai résolu mon problème toute seule biward Mais j'ai une autre demande ! Pseudo : Mage Projet : Final Darkness script : J'ai besojn d'adapter ce bestaire pour l'ABS, car il ne marche qu'avec le SBS ou les combats normaux Le script :
Spoiler:
Code:
#======================================== # ■ Bestiaire pour RPG Maker VX #------------------------------------------------------------------------------ # Version 1.0 (15/02/2008) par Krazplay # Dernière version, commentaires : # http://rpgmakerxp-factory.net/forum/index.php?topic=12494 #------------------------------------------------------------------------------ # Ce script est configuré pour fonctionner en 640x480 ! Vous pouvez trouver mon # script pour passer en 640x480 ici (aucune inscription n'est nécessaire) : # http://rpgmakerxp-factory.net/forum/index.php?topic=12460 # Ce script fonctionne dans les autres résolutions, mais il faut le reconfigurer # (voir les constantes à modifier plus bas) pour que les textes ne dépassent pas. #------------------------------------------------------------------------------ # Ce script utilise les variables 4001 à 4000+Nbre de monstres dans votre base # de données. Cela peut facilement être modifié pour utiliser d'autres variables # que celles du jeu. # Pour appeller ce menu il suffit d'utiliser la ligne suivante : # $scene = Scene_Liste_Monstres.new # Cette scene renvoie au menu lorsqu'elle se termine, si vous voulez qu'elle # ramène sur la carte plutôt qu'au menu, ajouter l'argument false : # $scene = Scene_Liste_Monstres.new(false) # # N'oubliez pas de jeter un oeil à la configuration juste en-dessous ! #------------------------------------------------------------------------------ # Vous pouvez librement redistribuer ce script, y compris des versions modifiées. # Mais vous devez laisser la provenance (auteur/site) du script original, elle # est précisée au début des commentaires. #============================================================================== module KRAZ_SLM # Si Vrai, les monstres qui n'ont pas encore été vaincus n'apparaissent pas du # tout dans la liste (même pas comme monstre inconnu) MONSTRES_INCONNUS_INVISIBLES = false # Si Vrai, les noms des monstres sont visibles même s'ils n'ont jamais été # tués, si Faux, ils apparaitront avec le nom précisé dans NOM_MONSTRE_INCONNU NOMS_PAR_DEFAUT = true # Si les monstres inconnus sont visibles mais que leurs noms n'apparaissent # pas s'ils n'ont pas encore été tué, alors c'est celui-là qui sera utilisé. NOM_MONSTRE_INCONNU = "Monstre inconnu" # Si vrai, on peut accéder aux détails d'un monstre même si l'on en a pas encore # tué un. DETAILS_PAR_DEFAUT = true # Si la scene est appelée par le menu, il peut être sympa de remettre le curseur # sur la commande Bestiaire lorsqu'on y retourne. POSITION_DS_MENU = 0 # Définit quelles variables vont être utilisées. # N'oublier pas que cela commence à DEPART_VARIABLES+1, parce que le premier # monstre a l'ID 1 et non 0. DEPART_VARIABLES = 4000 # Les méthodes suivantes sont les seules références aux variables où sont # stockés le nombre d'ennemi tué de chaque sorte, donc si vous désirez ne pas # utiliser des variables du jeu, c'est uniquement ici que ça se passe. def self.nombre_tués(id_monstre) return $game_variables[DEPART_VARIABLES+id_monstre] end
def self.set_nombre_tués(id_monstre, nombre) $game_variables[DEPART_VARIABLES+id_monstre] = nombre end
def self.ajout_nombre_tués(id_monstre, nombre) $game_variables[DEPART_VARIABLES+id_monstre] += nombre end
# Ce qui suit permet de déplacer quasiment tout les textes présents dans le # script afin que vous puissiez le customiser ou le faire fonctionner dans une # autre résolution. #======> Positionnement des éléments <======# # Pour du 640x480 #-------------------------------------------# # La fenêtre générale prend automatiquement tout l'écran # Taille de la police FG_TP = 24 # Description des 2 colonnes FG_COL1 = "Nom du monstre :" FG_COL2 = "Nombre tués :" # Position des descriptions [x, y, longueur, hauteur] FG_PD1 = [10, 0, 200, 32] FG_PD2 = [350, 0, 200, 32] # Position du numéro du monstre selectionné [x, y, longueur, hauteur] FG_NM = [240, 420, 300, 32]
# Fenêtre liste des monstres [x, y, longueur, hauteur] # Attention cette fenêtre ne se voit pas, seul son contenu est visible. FM = [0, 66, 544, 350]# # Nom du monstre [x, largeur max] FM_NM = [20, 300] # Nombre de monstres tués [x, largeur] # Attention alignement du texte à droite et non à gauche. FM_NMT = [470, 30]
# Fenêtre détails d'un monstre [x, y, largeur, hauteur] FD = [0, 0, 544, 416] # Vitesse ouverture/fermeture (255 le plus rapide) FD_V = 24 # Position de l'image du monstre [x, y] FD_B = [215, 220] # Taille de la police du nom du monstre FD_TT = 29 # Couleur du nom du monstre [Rouge, Vert, Bleu, Opacité] FD_CT = [255, 155, 155, 255] # Nom du monstre [x, y, longueur, hauteur] # Attention ici le nom est centré sur x FD_NM = [300, 0, 400, 32] # Taille de la police du reste de la fenêtre FD_TP = 24 # Utilise la couleur système pour la suite FD_COLOR_SYSTEM = true # Si vous ne désirez pas utiliser la couleur système # [Rouge, Vert, Bleu, Opacité] FD_CSA = [255, 155, 155, 255] # Pour tout ce qui suit, le nom de la caractéristique et sa valeur sont écrit # dans le même rectangle, mais la valeur est aligné à droite du rectangle. # Position HP [x, y, longueur, hauteur] FD_HP = [50, 30, 100, 32] # Points de vie FD_MP = [50, 55, 100, 32] # Points de magie FD_ATK = [300, 50, 200, 32] # Attaque FD_DEF = [300, 80, 200, 32] # Défense FD_SPI = [300, 110, 200, 32] # Esprit FD_AGI = [300, 140, 200, 32] # Agilité FD_EXP = [10, 335, 100, 32] # Experience FD_GOLD = [10, 360, 100, 32] # Argent # Mots désignants respectivement l'experience et les objets pouvant être laissé # par l'ennemi. FD_MEXP = "EXP" FD_MDROP = "Objets" # Position du mot FD_MDROP [x, y, longueur, hauteur] FD_DROP = [10, 385, 200, 32] # Position des objets droppé par l'ennemi [x, y, longueur, hauteur] FD_DR1 = [150, 385, 212, 32] FD_DR2 = [150, 410, 200, 32] # Graphique des défenses élémentales [x, y, rayon] FD_GDE = [300, 200, 30] ##=====> Fin positionnement des éléments pour 640x480 <=====## end
#============================================================================== # ■ Scene_Battle #------------------------------------------------------------------------------ # Ajoute les monstres tués aux variables lorsqu'on gagne un combat ou fuit. #============================================================================== class Scene_Battle include KRAZ_SLM
alias kraz_slm_process_victory process_victory def process_victory compte_les_morts kraz_slm_process_victory end
alias kraz_slm_process_escape process_escape def process_escape compte_les_morts kraz_slm_process_escape end
def compte_les_morts for enemy in $game_troop.members if enemy.dead? KRAZ_SLM.ajout_nombre_tués(enemy.enemy_id, 1) end end end end
#============================================================================== # ■ Scene_Liste_Monstres #------------------------------------------------------------------------------ # La scène du bestiaire, tout simplement. #============================================================================== class Scene_Liste_Monstres include KRAZ_SLM
def initialize(vient_du_menu = true) # Pour savoir si l'on retourne au menu ou sur la carte à la fin de la scene. @vient_du_menu = vient_du_menu # Sert à vérifier si l'index de la fenêtre monstres a changé. # -1 pour forcer la mise à jour dès le départ @monstres_index = -1 end
def main @general_window = Window_General.new @monstres_window = Window_Monstres.new @details_monstre_window = Window_Details_Monstre.new @general_window.set_max_monstres(@monstres_window.data.size) @details_monstre_window.openness = 0 @details_monstre_window.active = false Graphics.transition loop do Graphics.update Input.update update if $scene != self break end end @general_window.dispose @monstres_window.dispose end
def update # Mise à jour des fenêtre @general_window.update @monstres_window.update @details_monstre_window.update # On vérifie si le curseur a bougé if @monstres_window.index != @monstres_index @monstres_index = @monstres_window.index @general_window.affiche_numero(@monstres_index+1) end # Bouton de confirmation if Input.trigger?(Input::C) if @monstres_window.active and @monstres_window.data.size > 0 id_monstre = @monstres_window.data[@monstres_window.index][2] if KRAZ_SLM.nombre_tués(id_monstre) > 0 or DETAILS_PAR_DEFAUT @details_monstre_window.refresh(id_monstre) @details_monstre_window.active = true @details_monstre_window.open @monstres_window.active = false Sound.play_decision else Sound.play_buzzer end end # Bouton d'annulation elsif Input.trigger?(Input::B) Sound.play_cancel if @monstres_window.active $scene = @vient_du_menu ? Scene_Menu.new(POSITION_DS_MENU) : Scene_Map.new Graphics.freeze elsif @details_monstre_window.active @details_monstre_window.active = false @details_monstre_window.close @monstres_window.active = true end end if @details_monstre_window.active # Passage d'un monstre à l'autre lorsqu'on regarde leurs détails if Input.repeat?(Input::RIGHT) or Input.repeat?(Input::DOWN) data = @monstres_window.data new_index = index = @monstres_window.index data.size.times do new_index +=1 new_index = 0 if new_index >= data.size break if DETAILS_PAR_DEFAUT or data[new_index][1] > 0 end if new_index != index @details_monstre_window.refresh(data[new_index][2]) Sound.play_cursor @monstres_window.index = new_index end elsif Input.repeat?(Input::LEFT) or Input.repeat?(Input::UP) data = @monstres_window.data new_index = index = @monstres_window.index data.size.times do new_index -=1 new_index = data.size-1 if new_index < 0 break if DETAILS_PAR_DEFAUT or data[new_index][1] > 0 end @details_monstre_window.refresh(data[new_index][2]) if new_index != index @monstres_window.index = new_index if new_index != index @details_monstre_window.refresh(data[new_index][2]) Sound.play_cursor @monstres_window.index = new_index end end end end # update_command end # class Scene_Liste_Monstres
#============================================================================== # ■ Window_General #------------------------------------------------------------------------------ # Fenêtre général #============================================================================== class Window_General < Window_Base include KRAZ_SLM
def affiche_numero(ind=1) # On efface une partie de la fenêtre (RGSS2!) avant d'écrire dessus self.contents.clear_rect(FG_NM[0], FG_NM[1], FG_NM[2], FG_NM[3]) self.contents.draw_text(FG_NM[0], FG_NM[1], FG_NM[2], FG_NM[3], "Monstre #{ind} / #{@max}") end
def set_max_monstres(max) @max = max end end
#============================================================================== # ■ Window_Monstres #------------------------------------------------------------------------------ # Fenêtre avec le nom de tout les ennemis tués et combien de fois ils ont été # tués. Seul le texte de la fenêtre reste visible (l'opacité et l'opacité du # fond est mise à zéro). #============================================================================== class Window_Monstres < Window_Selectable include KRAZ_SLM
attr_reader :data
def initialize # Création de la fenêtre, on s'assure qu'elle au-dessus de la fenêtre 'General' super(FM[0], FM[1], FM[2], FM[3]) # On ne veut voir que le texte, donc opacité et back_opacity à 0 self.back_opacity = 0 self.opacity = 0 # Index à zéro lorsqu'on commence, une seule colonne self.index = 0 @column_max = 1 # @data est le tableau des données qui vont être affichées. # Ces éléments sont des tableaux [nom du monstre, nombre tué, id du monstre] @data = [] # Remplissage de @data for monstre in $data_enemies next if monstre == nil id = monstre.id tués = KRAZ_SLM.nombre_tués(id) if tués == 0 next if MONSTRES_INCONNUS_INVISIBLES nom = NOMS_PAR_DEFAUT ? monstre.name : NOM_MONSTRE_INCONNU @data.push([nom, tués, id]) else nom = monstre.name @data.push([nom, tués, id]) end end # Le nombre d'objets dans notre liste c'est évidement le nombre de monstre # qu'on va afficher @item_max = @data.size # Va mettre le bitmap à la bonne taille create_contents refresh end
def refresh self.contents.clear for i in 0...@item_max draw_item(i) end end
def draw_item(index) tab_monstre = @data[index] if tab_monstre != nil self.contents.draw_text( FM_NM[0], (WLH * index), FM_NM[1], WLH, tab_monstre[0]) self.contents.draw_text(FM_NMT[0], (WLH * index),FM_NMT[1], WLH, tab_monstre[1].to_s, 2) end end
def item_rect(index) rect = Rect.new(0, 0, 0, 0) rect.width = (contents.width + @spacing) / @column_max - @spacing rect.height = WLH rect.x = index % @column_max * (rect.width + @spacing) rect.y = index / @column_max * WLH return rect end
def update super if @column_max == 1 and self.active if Input.repeat?(Input::RIGHT) cursor_pagedown end if Input.repeat?(Input::LEFT) cursor_pageup end end end
end #class Window_Monstres
#============================================================================== # ■ Window_details_monstre #------------------------------------------------------------------------------ # Permet de créer une fenêtre avec les détails d'un ennemi #============================================================================== class Window_Details_Monstre < Window_Base include KRAZ_SLM
self.contents.draw_text(FD_EXP[0], FD_EXP[1], FD_EXP[2], FD_EXP[3], $data_enemies[monstre_id].exp.to_s, 2) self.contents.draw_text(FD_GOLD[0], FD_GOLD[1], FD_GOLD[2], FD_GOLD[3], $data_enemies[monstre_id].gold.to_s, 2) # Affichage objets que peuvent donner les ennemis if $data_enemies[monstre_id].drop_item1.kind != 0 item = $data_enemies[monstre_id].drop_item1 case item.kind when 1 icon_index = $data_items[item.item_id].icon_index name = $data_items[item.item_id].name when 2 icon_index = $data_weapons[item.weapon_id].icon_index name = $data_weapons[item.item_id].name when 3 icon_index = $data_armors[item.armor_id].icon_index name = $data_armors[item.item_id].name end opacity = self.contents.font.color == normal_color ? 255 : 128 denom = $data_enemies[monstre_id].drop_item1.denominator.to_s
draw_icon(icon_index, FD_DR1[0], FD_DR1[1]+4) self.contents.draw_text(FD_DR1[0]+30, FD_DR1[1], FD_DR1[2], FD_DR1[3], name + " (1/#{denom})", 0) end if $data_enemies[monstre_id].drop_item2.kind != 0 item = $data_enemies[monstre_id].drop_item2 case item.kind when 1 icon_index = $data_items[item.item_id].icon_index name = $data_items[item.item_id].name when 2 icon_index = $data_weapons[item.weapon_id].icon_index name = $data_weapons[item.item_id].name when 3 icon_index = $data_armors[item.armor_id].icon_index name = $data_armors[item.item_id].name end opacity = self.contents.font.color == normal_color ? 255 : 128 denom = $data_enemies[monstre_id].drop_item2.denominator draw_icon(icon_index, FD_DR2[0], FD_DR2[1]+4) self.contents.draw_text(FD_DR2[0]+30, FD_DR2[1], FD_DR2[2], FD_DR2[3], name + " (1/#{denom})", 0) end self.draw_enemy_element_radar_graph($data_enemies[monstre_id], FD_GDE[0], FD_GDE[1], FD_GDE[2]) end end
#-------------------------------------------------------------------------- # ● draw_actor_battler # Dessine le battler de l'acteur aux coordonnées x,y # L'acteur peut aussi bien être un monstre qu'un personnage #-------------------------------------------------------------------------- class Window_Base def draw_actor_battler(actor, x, y) bitmap = Cache.battler(actor.battler_name, actor.battler_hue) cw = bitmap.width ch = bitmap.height src_rect = Rect.new(0, 0, cw, ch) self.contents.blt(x - cw / 2, y - ch / 2, bitmap, src_rect) end end
#============================================================================== # �¡ Window_Status #============================================================================== class Window_Base #-------------------------------------------------------------------------- def draw_enemy_element_radar_graph(enemy, x, y, radius = 56) cx = x + radius + FONT_SIZE + 48 cy = y + radius + FONT_SIZE + 32 self.contents.font.color = system_color #self.contents.draw_text(x, y, 134, 32, WORD_ELEMENT_GUARD) for loop_i in 0..NUMBER_OF_ELEMENTS if loop_i == 0
end next if loop_i == 0 self.contents.draw_line(cx+1,cy+1, @now_x+1,@now_y+1, GRAPH_SCALINE_COLOR_SHADOW) self.contents.draw_line(@pre_x+1,@pre_y+1, @now_x+1,@now_y+1, GRAPH_SCALINE_COLOR_SHADOW) self.contents.draw_line(cx,cy, @now_x,@now_y, GRAPH_SCALINE_COLOR) self.contents.draw_line(@pre_x,@pre_y, @now_x,@now_y, GRAPH_SCALINE_COLOR) self.contents.draw_line(@pre_ex,@pre_ey, @now_ex,@now_ey, @color1, 2, @color2) self.contents.font.size = FONT_SIZE self.contents.font.color = system_color self.contents.draw_text(@now_wx,@now_wy, FONT_SIZE*2, FONT_SIZE, estr, 1) self.contents.font.color = Color.new(255,255,255,128) self.contents.draw_text(@now_vx,@now_vy, FONT_SIZE*2, FONT_SIZE, er.to_s + "%", 2) end end
#-------------------------------------------------------------------------- # ● 属性補正値の取得 # element_id : 属性 ID #-------------------------------------------------------------------------- def element_pourcent(enemy, element_id) table = [0,200,150,100,50,0,-100] return table[enemy.element_ranks[element_id]] end end #============================================================================== # �¸ ¦O�����C�u���¦ #============================================================================== class Bitmap def draw_line(start_x, start_y, end_x, end_y, start_color, width = 1, end_color = start_color) distance = (start_x - end_x).abs + (start_y - end_y).abs if end_color == start_color for i in 1..distance x = (start_x + 1.0 * (end_x - start_x) * i / distance).to_i y = (start_y + 1.0 * (end_y - start_y) * i / distance).to_i if width == 1 self.set_pixel(x, y, start_color) else self.fill_rect(x, y, width, width, start_color) end end else for i in 1..distance x = (start_x + 1.0 * (end_x - start_x) * i / distance).to_i y = (start_y + 1.0 * (end_y - start_y) * i / distance).to_i r = start_color.red * (distance-i)/distance + end_color.red * i/distance g = start_color.green * (distance-i)/distance + end_color.green * i/distance b = start_color.blue * (distance-i)/distance + end_color.blue * i/distance a = start_color.alpha * (distance-i)/distance + end_color.alpha * i/distance if width == 1 self.set_pixel(x, y, Color.new(r, g, b, a)) else self.fill_rect(x, y, width, width, Color.new(r, g, b, a)) end end end end end
Voilà merci bien ^^
Dernière édition par mage le Sam 3 Juil 2010 - 8:42, édité 1 fois
Biward
Age : 28 Inscrit le : 30/12/2009 Messages : 1067
Sujet: Re: Marché de Biward [Fermé aux demandes] Ven 2 Juil 2010 - 22:17
@> mage → Ok ok
@> CloudStrife → C'est corrigé Le script de Djinn marche ?
Biward
gelamine
Mage Lv.11
Age : 26 Avertissements : 3Inscrit le : 03/04/2010 Messages : 512
Sujet: Re: Marché de Biward [Fermé aux demandes] Ven 2 Juil 2010 - 23:14
Est-ce possible, avant que je poste un truc plus claire, que tu fasse : Baisse de son dans le menu, Gigotement des joueurs lorsqu'ils ne bougent pas (ABS KH), Afficher d'autres trucs dans l'écran titre (des menus, par exemple d'abord il y a nouvelle partie et continuer (pas quitter the game il suffit de cliquer "fermer", ensuite si nouvelle partie un des joueurs avec qui ont veut jouer pour cette partie, puis le niveau de difficulté).
Magi
Mage Lv.11
Age : 30 Inscrit le : 20/05/2010 Messages : 542
Sujet: Re: Marché de Biward [Fermé aux demandes] Sam 3 Juil 2010 - 7:38
Merci Biward ^^
Biward
Age : 28 Inscrit le : 30/12/2009 Messages : 1067
Sujet: Re: Marché de Biward [Fermé aux demandes] Sam 3 Juil 2010 - 9:27
@> gelamine → Envoie toute tes demandes séparément par MP.
@> mage → De rien mais évite le flood
@> Tous → Le mode de demande a changé ! Regardez mon premier post !
Biward
Garruk
Aventurier Lv.16
Age : 40 Inscrit le : 03/09/2009 Messages : 1503
Sujet: Re: Marché de Biward [Fermé aux demandes] Sam 3 Juil 2010 - 17:24
Biward le script pour les musiques ne marchent pas.
Pour le script du djinn laisse béton, car il bug encore et j'ai trouvé un script semblable sur un autre site donc on oublie se script. =)
Je veux bien que tu corriges ce lui de la musique et que tu t'occupes de mon bestiaire pour remplacer le Djinn.
Merci. =)
Biward
Age : 28 Inscrit le : 30/12/2009 Messages : 1067
Sujet: Re: Marché de Biward [Fermé aux demandes] Sam 3 Juil 2010 - 21:22
Dit moi au moins ce qui ne marche pas : - Dans le script de Djinn : j'ai testé et, nomalement, il est fonctionnel. (j'ai testé sur un projet qui contient tous les scripts que tu as...) - Dans le script Victory_Music : J'ai aussi testé mais sur un projet vierge...Je vais regarder ça
Biward
Garruk
Aventurier Lv.16
Age : 40 Inscrit le : 03/09/2009 Messages : 1503
Sujet: Re: Marché de Biward [Fermé aux demandes] Sam 3 Juil 2010 - 21:39
Le problème pour les Djinn c'est quand il atteint les niveau 3, 4 et que tu veux le faire monter en xp ça plante un moment ou un autre et pareil quand tu t'équipe d'arme tu vois pas les stats quand tu veux changer, mais j'ai dit oublie ce script j'en ai trouvé un à peu près équivalent. =)
Biward
Age : 28 Inscrit le : 30/12/2009 Messages : 1067
Sujet: Re: Marché de Biward [Fermé aux demandes] Sam 3 Juil 2010 - 22:14
Je n'aime pas baclé les choses u_u Pour le bug du niveau 3 et 4, tu es sur que tu n'as pas oublié de mettre des choses dans la configuration du script ?
Edit : Nan, au fait tu as raison...J'ai ps envie de le corriger en plus u_u
Biward
PS = PS2 =
Magi
Mage Lv.11
Age : 30 Inscrit le : 20/05/2010 Messages : 542
Sujet: Re: Marché de Biward [Fermé aux demandes] Dim 4 Juil 2010 - 17:46
Salut Biward ^^ Sympa ton scrit d'image menu ! Celui de batlleback aussi même si ca existe deja a peu pres pareil et que je vais pas l'utiliser vu que je fais un A-RPG... Sinon tu t'en sors avec mon bestiaire ?
BARVACHE
Vache Folle
Age : 29 Inscrit le : 22/05/2010 Messages : 3005
Sujet: Re: Marché de Biward [Fermé aux demandes] Dim 4 Juil 2010 - 17:57
Je t'ai envoyé un MP comme précisé plus haut mais j'ai vu que tout le monde postait ici. Donc voilà ma demande: Secteur :COMBAT Il me faudrait un script qui permet de placer une compétence dans le menu combat: ATTAQUER DEFENSE COMPETENCES FEU I Si c'est possible, j'aimerais qu'on puisse choisir quelle compétence via un event(ou le menu). Merci d'avance!