AccueilAccueil  PortailPortail  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  ConnexionConnexion  



Le Deal du moment : -28%
Brandt LVE127J – Lave-vaisselle encastrable 12 ...
Voir le deal
279.99 €

Partagez
 

 Système de Rangs v1.1 [VX]

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
CitrusPrenium
Citadin Lv.7
Citadin Lv.7
CitrusPrenium


Masculin Age : 24
Inscrit le : 24/09/2011
Messages : 200

Système de Rangs v1.1 [VX] Empty
MessageSujet: Système de Rangs v1.1 [VX]   Système de Rangs v1.1 [VX] Icon_minitimeSam 13 Oct 2012 - 22:25

voici un script créé par LeonBlade qui permet d'assigner des rangs à vos personnages
par le moyen d'interrupteurs.
Très utilisé dans les projets à long terme.

But : Les rangs ne servent pas à grand chose, excepté à indiquer un grade, un niveau (qui est en fait pas un niveau) pour vos persos. Un rang qui indique un accomplissement de votre héros : genre niv. 1 tu es un civil, niv. 75 tu es une légende!!!

Script :
Code:

#===============================================================================
# RANKING SYSTEM
# By: Leon Blade
#===============================================================================
# Features:
#
# * Dynamically Add, Remove, or Change Ranking for different Heros
# * Display Soldier's Rank in Message Boxes
#
#-------------------------------------------------------------------------------
# Adding, Removing, or Changing Ranking:
#
# Add Hero To Soldier: $game_rank.AddSoldier(hero_id, rank)
# Remove Hero From Soldier: $game_rank.RemoveSoldier(hero_id)
# Change Hero's Rank: $game_rank.ChangeSoldier(hero_id, rank)
#
#-------------------------------------------------------------------------------
# Displaying Messages:
#
# Typing \sr[id]: SR stands for Soldier Rank. Pass in the ID to get the rank
#
#-------------------------------------------------------------------------------
# NOTE: If you see anything commented out with the word "print" in it
# Those can be used for DEBUGING Just un comment them and then they
# Will provide you with basic information. Read them to figure it out
#
#-------------------------------------------------------------------------------
# Thats all for comments
# Hope you enjoy this script!
#
# --Leon Blade
#===============================================================================

class RankSystem

 attr_reader :soldiers # Read in the Soldiers
 attr_reader :ranks # Read in the Ranks
 attr_accessor :hero_id # Get the hero's id
 attr_accessor :rank # Get the hero's rank

 def initialize
 @hero = 0 # The Current Hero ID
 @rank = 0 # The Current Rank
 @soldiers = [] # The Heros Array
 @ranks = [] # The Rank Array
 end

 #-----------------------------------------------------------------------------
 # Add Soldier: To add a soldier type in $game_rank.AddSoldier(hero_id, rank)
 #-----------------------------------------------------------------------------
 def AddSoldier(hero_id, rank)
@hero = hero_id
 @rank = rank
i=0
 pick = true
 while i < @soldiers.length
 if @hero == @soldiers[i]
 # print "The Soldier #{$game_actors[@hero].name} is already a Soldier"
 pick = false
 end
 i += 1
 end
if pick == true
 @soldiers[@hero] = @hero
 @ranks.push[@hero] = @rank
 # print "You added #{$game_actors[@hero].name} to Soldier at Rank #{@rank}"
end
end

 #-----------------------------------------------------------------------------
 # Remove Soldier: To remove a soldier type in $game_rank.RemoveSoldier(hero_id)
 #-----------------------------------------------------------------------------
 def RemoveSoldier(hero_id)
 @hero = hero_id
 i=0
 while i < @soldiers.size
 if @hero == @soldiers[i]
 @soldiers.delete_at(i)
 @ranks.delete_at(i)
 # print "You removed #{$game_actors[@hero].name} from Soldier"
 end
 i += 1
 end
 end

 #-----------------------------------------------------------------------------
 # Change Soldier: To change a soldier type in
# $game_rank.AddSoldier(hero_id, rank)
 #-----------------------------------------------------------------------------
 def ChangeSoldier(hero_id, rank)
 @hero = hero_id
 @rank = rank
 i=0
 while i < @soldiers.length
 if @hero == @soldiers[i]
 # print "#{$game_actors[@hero].name}'s current Rank is #{@ranks[i]}"
 @ranks[i] = @rank
 # print "You changed #{$game_actors[@hero].name}'s Rank to #{@rank}"
 end
 i += 1
 end
 end

end

#===============================================================================
# Window Message
#-------------------------------------------------------------------------------
# This will allow for easy naming for Soldier Members and there Ranks
# Simply type \SR[id] To get the Rank of the Soldier
#===============================================================================
class Window_Message < Window_Selectable

 alias rank_special_character convert_special_characters

 def convert_special_characters
 rank_special_character
 @text.gsub!(/\\SR\[([0-9]+)\]/i) { $game_rank.ranks[$1.to_i] }
 end

end

#===============================================================================
# Menu Window
#===============================================================================
class Window_MenuStatus < Window_Selectable

 alias rank_refresh refresh

 def refresh
 rank_refresh
 self.contents.clear
 @item_max = $game_party.members.size
 for actor in $game_party.members
 draw_actor_face(actor, 2, actor.index * 96 + 2, 92)
 x = 104
 y = actor.index * 96 + WLH / 2
 draw_actor_name(actor, x, y)
 draw_actor_class(actor, x + 120, y)
 draw_actor_level(actor, x, y + WLH * 1)
 draw_actor_state(actor, x, y + WLH * 2)
 draw_actor_hp(actor, x + 120, y + WLH * 1)
 draw_actor_mp(actor, x + 120, y + WLH * 2)
 i=0
 while i < $game_rank.soldiers.length+1
 if actor.index+1 == $game_rank.soldiers[i+1]
 self.contents.font.color = system_color
 self.contents.draw_text(x, y+WLH*1+20,300,32,"Rank")
 self.contents.font.color = normal_color
 self.contents.draw_text(x+50, y+WLH*1+20,300,32,$game_rank.ranks[i+1])
 i = $game_rank.soldiers.length
 end
 i += 1
 end
end
 end

end

#===============================================================================
# This will add $game_rank for refrence to the RankSystem Class
#===============================================================================
class Scene_Title < Scene_Base

 alias rank_game_object create_game_objects

 def create_game_objects
 rank_game_object
 $game_rank = RankSystem.new
 end

end

Toutes les instructions sont dans les premières lignes du script; tout est bien expliqué.

Icompatibilité :Je n'ai remarqué aucun script incompatible avec celui-ci, alors vous devreiz avoir aucun problème sinon laissez un message et je vous répondrai dans les plus brefs délais.


Citrus king

Mettez des balises code pour les scripts, svp

Merci du partage ! +2 points de participation ! Peut-être un screen, que l'on puisse constater, pourrait être utile


Dernière édition par CitrusPrenium le Dim 14 Oct 2012 - 21:26, édité 1 fois
Revenir en haut Aller en bas
zouzaka
Croisé Lv.14
Croisé Lv.14
zouzaka


Masculin Age : 25
Inscrit le : 22/05/2011
Messages : 1141

Système de Rangs v1.1 [VX] Empty
MessageSujet: Re: Système de Rangs v1.1 [VX]   Système de Rangs v1.1 [VX] Icon_minitimeDim 14 Oct 2012 - 17:26

il sert a quoi ce projet au juste ? que veut tu dire au juste par rangs ?
Citation :
Toutes les instructions sont dans les premières lignes du script; tout est bien expliqué.
je parle pas anglais ...
Revenir en haut Aller en bas
CitrusPrenium
Citadin Lv.7
Citadin Lv.7
CitrusPrenium


Masculin Age : 24
Inscrit le : 24/09/2011
Messages : 200

Système de Rangs v1.1 [VX] Empty
MessageSujet: Re: Système de Rangs v1.1 [VX]   Système de Rangs v1.1 [VX] Icon_minitimeDim 14 Oct 2012 - 21:25

je vais éditer pour être plus clair.
Revenir en haut Aller en bas
Contenu sponsorisé




Système de Rangs v1.1 [VX] Empty
MessageSujet: Re: Système de Rangs v1.1 [VX]   Système de Rangs v1.1 [VX] Icon_minitime

Revenir en haut Aller en bas
 

Système de Rangs v1.1 [VX]

Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1

 Sujets similaires

-
» Un système de forge (système de minage à venir)
» Rangs, Titres & Palmarès
» Mini-concours: les Rangs [Résultats]
» Systéme de vie
» Systeme d'assassina

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
RPG Maker VX :: Entraide :: Scripts :: Scripts VX - RGSS2 :: Héros et équipe-
Créer un forum | ©phpBB | Forum gratuit d'entraide | Signaler un abus | Forum gratuit