- vincent26Membre
- Nombre de messages : 766
Age : 29
Localisation : baume de transit le village paumé
Distinction : aucune
Date d'inscription : 17/08/2010
script menu quête simple (mes debut dans le scriptage)
Dim 9 Juin 2013 - 14:00
Salut à tous je debutent dans le scriptage et je vient de mettre au point
un script de menu de quête assez simple (qui doit être horriblement programmer )
ce script utilise cependant beaucoup d'image il permet surtout de ne pas passer par des evenement
ce n'ai pas encore du vrai script
une petite demo vaut mieux qu'une belle description
http://rapidshare.com/files/362994173/demo%20menu%20qu%C3%AAte.rar
en bonus une petite image
si vous avez des question ou des conseille je suis là
ps: des fichier pour les image son fourni dans la demo et nécessite paint.net
[EDIT]
Mise en place de script petit tuto ^^
I.) Changer le script DataManager :
Pour que le script fonctionnent il va tout d’abord falloir modifier quelque peut le script « DataManager » (le 4éme script en partant du haut de la liste)
Pour cela changer tout le script par celui là :
Sinon si vous voulez ne changer que les morceaux utile :
Sous la ligne 94 ajoutez :
Ensuite voici le script du menu de quête :
Pour chaque quête vous allez devoir crées 2 image :
- Une pour le Titre de votre quête de 354 x 38 pixel
Ex :
- Une pour la Description de la quête de 374 x 81 pixel
Ex :
Une fois chaque image crée ajoutez les a votre jeu grâce au gestionnaire de ressource (touche F10)
Il faut les ajoutez dans le dossier « Graphics/Pictures »
il faut aussi ces image la :
http://rapidshare.com/files/2066262488/image%20menu%20qu%C3%AAte.rar
ce sont celle du menu tout simple
III.) Mise en place des quête dans le script :
Pour mettre en place une quête dans le script il y a 2 possibilité si c’est une quête principale ou une quête secondaire :
Dans les 2 cas le script fonctionne ainsi :
Il faut associé chacune de vos quête a un identifiant (ID) un simple nombre qui definira votre quête.
Par exemple ma quête de l’ourson perdu est la 3 éme du jeu son ID est donc 3
Les quête principale et secondaire sont indépendante il peut donc y avoir un quête secondaire et une quête principale qui ai le même ID mais 2 quête principale ou 2 quête secondaire ne le peuvent pas
##Pour les quête principale :
Rendez-vous ligne 164 dans la section point d’acquisition quête principale
La dans le bloc commencent par « def image_q_principale(id_quête) » ajoutez cela entre le
« wait 1 » et le « else » :
Remplacer ensuite « ID » par l’id de votre quête (ex : 3 pour la quête de l’ourson)
Remplacer « NOM DE VOTRE QUÊTE » par le nom de l’image titre de votre quête (1 er image crée dans le paragraphe 2)
Ensuite dans le bloc commencant par « def image_d_principale(id_quête) » ajoutez cela entre le
« wait 1 » et le « else » :
Remplacer de nouveau « ID » par l’id de votre quête (ex : 3 pour la quête de l’ourson)
Remplacer « DESCRIPTION DE VOTRE QUÊTE » par le nom de l’image descriptive de votre quête (2 éme image crée dans le paragraphe 2)
Voila vous avez fini de mettre en place votre quête principale
Si vous devez en ajouter une nouvelle il suffit de réitèrer cette étape en ajoutant cette fois-ci le bloc de code entre votre ajout et « else »
##Pour les quête secondaire
Même principe mais dans la section acquisition des quête secondaires aux environs de la ligne 220
La dans le bloc commencent par « def id_quête(id_quête)» ajoutez cela entre le
« wait 1 » et le « else » :
Remplacer ensuite « ID » par l’id de votre quête
Remplacer « NOM DE VOTRE QUÊTE » par le nom de l’image titre de votre quête (1 er image crée dans le paragraphe 2)
Ensuite dans le bloc commencant par « def id_quête_d(id_quête)» ajoutez cela entre le
« wait 1 » et le « else » :
Remplacer de nouveau « ID » par l’id de votre quête (ex : 3 pour la quête de l’ourson)
Remplacer « DESCRIPTION DE VOTRE QUÊTE » par le nom de l’image descriptive de votre quête (2 éme image crée dans le paragraphe 2)
Voila vous avez fini de mettre en place votre quête secondaire
Si vous devez en ajouter une nouvelle il suffit de réitèrer cette étape en ajoutant cette fois-ci le bloc de code entre votre ajout et « else »
Voilou ici ce termine la mise en place des quête.
LISTING DES COMMANDE UTIL :
- $game_quête.debut (permet de lancer le menu de quête)
- $game_quête.nouvelle_quête_principale(ID) (permet de demarrer la quête principale d'id "ID")
- $game_quête.quête_principale_fini(ID) (permet de terminer la quête
un script de menu de quête assez simple (qui doit être horriblement programmer )
ce script utilise cependant beaucoup d'image il permet surtout de ne pas passer par des evenement
ce n'ai pas encore du vrai script
une petite demo vaut mieux qu'une belle description
http://rapidshare.com/files/362994173/demo%20menu%20qu%C3%AAte.rar
en bonus une petite image
si vous avez des question ou des conseille je suis là
ps: des fichier pour les image son fourni dans la demo et nécessite paint.net
[EDIT]
Mise en place de script petit tuto ^^
I.) Changer le script DataManager :
Pour que le script fonctionnent il va tout d’abord falloir modifier quelque peut le script « DataManager » (le 4éme script en partant du haut de la liste)
Pour cela changer tout le script par celui là :
- Code:
#==============================================================================
# ** DataManager
#------------------------------------------------------------------------------
# This module manages the database and game objects. Almost all of the
# global variables used by the game are initialized by this module.
#==============================================================================
module DataManager
#--------------------------------------------------------------------------
# * Module Instance Variables
#--------------------------------------------------------------------------
@last_savefile_index = 0 # most recently accessed file
#--------------------------------------------------------------------------
# * Initialize Module
#--------------------------------------------------------------------------
def self.init
@last_savefile_index = 0
load_database
create_game_objects
setup_battle_test if $BTEST
end
#--------------------------------------------------------------------------
# * Load Database
#--------------------------------------------------------------------------
def self.load_database
if $BTEST
load_battle_test_database
else
load_normal_database
check_player_location
end
end
#--------------------------------------------------------------------------
# * Load Normal Database
#--------------------------------------------------------------------------
def self.load_normal_database
$data_actors = load_data("Data/Actors.rvdata2")
$data_classes = load_data("Data/Classes.rvdata2")
$data_skills = load_data("Data/Skills.rvdata2")
$data_items = load_data("Data/Items.rvdata2")
$data_weapons = load_data("Data/Weapons.rvdata2")
$data_armors = load_data("Data/Armors.rvdata2")
$data_enemies = load_data("Data/Enemies.rvdata2")
$data_troops = load_data("Data/Troops.rvdata2")
$data_states = load_data("Data/States.rvdata2")
$data_animations = load_data("Data/Animations.rvdata2")
$data_tilesets = load_data("Data/Tilesets.rvdata2")
$data_common_events = load_data("Data/CommonEvents.rvdata2")
$data_system = load_data("Data/System.rvdata2")
$data_mapinfos = load_data("Data/MapInfos.rvdata2")
end
#--------------------------------------------------------------------------
# * Load Battle Test Database
#--------------------------------------------------------------------------
def self.load_battle_test_database
$data_actors = load_data("Data/BT_Actors.rvdata2")
$data_classes = load_data("Data/BT_Classes.rvdata2")
$data_skills = load_data("Data/BT_Skills.rvdata2")
$data_items = load_data("Data/BT_Items.rvdata2")
$data_weapons = load_data("Data/BT_Weapons.rvdata2")
$data_armors = load_data("Data/BT_Armors.rvdata2")
$data_enemies = load_data("Data/BT_Enemies.rvdata2")
$data_troops = load_data("Data/BT_Troops.rvdata2")
$data_states = load_data("Data/BT_States.rvdata2")
$data_animations = load_data("Data/BT_Animations.rvdata2")
$data_tilesets = load_data("Data/BT_Tilesets.rvdata2")
$data_common_events = load_data("Data/BT_CommonEvents.rvdata2")
$data_system = load_data("Data/BT_System.rvdata2")
end
#--------------------------------------------------------------------------
# * Check Player Start Location Existence
#--------------------------------------------------------------------------
def self.check_player_location
if $data_system.start_map_id == 0
msgbox(Vocab::PlayerPosError)
exit
end
end
#--------------------------------------------------------------------------
# * Create Game Objects
#--------------------------------------------------------------------------
def self.create_game_objects
$game_temp = Game_Temp.new
$game_system = Game_System.new
$game_timer = Game_Timer.new
$game_message = Game_Message.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
$game_quête = Game_Quête.new
$game_menu = Game_Menu.new
$game_compétence = Game_Compétence.new
$game_triche = Game_Triche.new
$quête_S = Array.new
$quête_P = Array.new
$quête_F = Array.new
$triche = Array.new
end
#--------------------------------------------------------------------------
# * Set Up New Game
#--------------------------------------------------------------------------
def self.setup_new_game
create_game_objects
$game_party.setup_starting_members
$game_map.setup($data_system.start_map_id)
$game_player.moveto($data_system.start_x, $data_system.start_y)
$game_player.refresh
Graphics.frame_count = 0
end
#--------------------------------------------------------------------------
# * Set Up Battle Test
#--------------------------------------------------------------------------
def self.setup_battle_test
$game_party.setup_battle_test
BattleManager.setup($data_system.test_troop_id)
BattleManager.play_battle_bgm
end
#--------------------------------------------------------------------------
# * Determine Existence of Save File
#--------------------------------------------------------------------------
def self.save_file_exists?
!Dir.glob('Save*.rvdata2').empty?
end
#--------------------------------------------------------------------------
# * Maximum Number of Save Files
#--------------------------------------------------------------------------
def self.savefile_max
return 16
end
#--------------------------------------------------------------------------
# * Create Filename
# index : File Index
#--------------------------------------------------------------------------
def self.make_filename(index)
sprintf("Save%02d.rvdata2", index + 1)
end
#--------------------------------------------------------------------------
# * Execute Save
#--------------------------------------------------------------------------
def self.save_game(index)
begin
save_game_without_rescue(index)
rescue
delete_save_file(index)
false
end
end
#--------------------------------------------------------------------------
# * Execute Load
#--------------------------------------------------------------------------
def self.load_game(index)
load_game_without_rescue(index) rescue false
end
#--------------------------------------------------------------------------
# * Load Save Header
#--------------------------------------------------------------------------
def self.load_header(index)
load_header_without_rescue(index) rescue nil
end
#--------------------------------------------------------------------------
# * Execute Save (No Exception Processing)
#--------------------------------------------------------------------------
def self.save_game_without_rescue(index)
File.open(make_filename(index), "wb") do |file|
$game_system.on_before_save
Marshal.dump(make_save_header, file)
Marshal.dump(make_save_contents, file)
@last_savefile_index = index
end
return true
end
#--------------------------------------------------------------------------
# * Execute Load (No Exception Processing)
#--------------------------------------------------------------------------
def self.load_game_without_rescue(index)
File.open(make_filename(index), "rb") do |file|
Marshal.load(file)
extract_save_contents(Marshal.load(file))
reload_map_if_updated
@last_savefile_index = index
end
return true
end
#--------------------------------------------------------------------------
# * Load Save Header (No Exception Processing)
#--------------------------------------------------------------------------
def self.load_header_without_rescue(index)
File.open(make_filename(index), "rb") do |file|
return Marshal.load(file)
end
return nil
end
#--------------------------------------------------------------------------
# * Delete Save File
#--------------------------------------------------------------------------
def self.delete_save_file(index)
File.delete(make_filename(index)) rescue nil
end
#--------------------------------------------------------------------------
# * Create Save Header
#--------------------------------------------------------------------------
def self.make_save_header
header = {}
header[:characters] = $game_party.characters_for_savefile
header[:playtime_s] = $game_system.playtime_s
header
end
#--------------------------------------------------------------------------
# * Create Save Contents
#--------------------------------------------------------------------------
def self.make_save_contents
contents = {}
contents[:system] = $game_system
contents[:timer] = $game_timer
contents[:message] = $game_message
contents[:switches] = $game_switches
contents[:variables] = $game_variables
contents[:self_switches] = $game_self_switches
contents[:actors] = $game_actors
contents[:party] = $game_party
contents[:troop] = $game_troop
contents[:map] = $game_map
contents[:player] = $game_player
contents[:quêteS] = $quête_S
contents[:quêteP] = $quête_P
contents[:quêteF] = $quête_F
contents[:triche] = $triche
contents
end
#--------------------------------------------------------------------------
# * Extract Save Contents
#--------------------------------------------------------------------------
def self.extract_save_contents(contents)
$game_system = contents[:system]
$game_timer = contents[:timer]
$game_message = contents[:message]
$game_switches = contents[:switches]
$game_variables = contents[:variables]
$game_self_switches = contents[:self_switches]
$game_actors = contents[:actors]
$game_party = contents[:party]
$game_troop = contents[:troop]
$game_map = contents[:map]
$game_player = contents[:player]
$quête_S = contents[:quêteS]
$quête_P = contents[:quêteP]
$quête_F = contents[:quêteF]
$triche = contents[:triche]
end
#--------------------------------------------------------------------------
# * Reload Map if Data Is Updated
#--------------------------------------------------------------------------
def self.reload_map_if_updated
if $game_system.version_id != $data_system.version_id
$game_map.setup($game_map.map_id)
$game_player.center($game_player.x, $game_player.y)
$game_player.make_encounter_count
end
end
#--------------------------------------------------------------------------
# * Get Update Date of Save File
#--------------------------------------------------------------------------
def self.savefile_time_stamp(index)
File.mtime(make_filename(index)) rescue Time.at(0)
end
#--------------------------------------------------------------------------
# * Get File Index with Latest Update Date
#--------------------------------------------------------------------------
def self.latest_savefile_index
savefile_max.times.max_by {|i| savefile_time_stamp(i) }
end
#--------------------------------------------------------------------------
# * Get Index of File Most Recently Accessed
#--------------------------------------------------------------------------
def self.last_savefile_index
@last_savefile_index
end
end
Sinon si vous voulez ne changer que les morceaux utile :
Sous la ligne 94 ajoutez :
- Code:
$game_quête = Game_Quête.new
$quête_S = Array.new
$quête_P = Array.new
$quête_F = Array.new
- Code:
contents[:quêteS] = $quête_S
contents[:quêteP] = $quête_P
contents[:quêteF] = $quête_F
- Code:
$quête_S = contents[:quêteS]
$quête_P = contents[:quêteP]
$quête_F = contents[:quêteF]
Ensuite voici le script du menu de quête :
- Code:
=begin
################################################################################
################################################################################
##################################### #########################################
#################################### ########################################
################################### || #######################################
################################## || ######################################
################################# || #####################################
################################ ####################################
############################### [] ###################################
############################## ##################################
################################################################################
## ##
##Dans "DataManager" (dans la section module des script) ajouter : ##
##Sous la ligne 94: ##
## $game_quête = Game_Quête.new ##
## $quête_S = Array.new ##
## $quête_P = Array.new ##
## $quête_F = Array.new ##
## ##
## ##
##Sous la ligne 225 (numéro d'aprés 1 er ajout): ##
## contents[:quêteS] = $quête_S ##
## contents[:quêteP] = $quête_P ##
## contents[:quêteF] = $quête_F ##
## ##
## ##
##Sous la ligne 245 (numéro d'aprés les 2 autre ajout): ##
## $quête_S = contents[:quêteS] ##
## $quête_P = contents[:quêteP] ##
## $quête_F = contents[:quêteF] ##
## ##
##SINON ##
## ##
##remplacer entièrement le DataManager par celui présent dans cette démo ##
################################################################################
################################################################################
#################Pour l'acquisition de quête principale: #######################
Chaque quête nécessite 2 image :
- Une de 354 x 38 pixel pour le nom de la quête
- Une de 374 x 81 pixel pour la descripation de la quête
aucun nom n'est obligatoire mais chaque quête est définie par sont identifiant
(le numéro de la quête) pour mettre en place les quête rendez vous ligne 168 la
dans le premier paragraphe ajoutez simplement avant le dernier else :
elsif $quête_P[id_quête][0] == "ID de la quête"
return 'nom de votre image (nom de la quête).png'
Puis deuxiéme paragraphe ajoutez simplement avant le dernier else :
elsif $quête_P[id_quête][0] == "ID de la quête"
return 'nom de votre image (decriptif de la quête).png'
################################################################################
#################Pour l'acquisition de quête secondaire: #######################
Chaque quête nécessite 2 image :
- Une de 354 x 38 pixel pour le nom de la quête
- Une de 374 x 81 pixel pour la descripation de la quête
aucun nom n'est obligatoire mais chaque quête est définie par sont identifiant
(le numéro de la quête) pour mettre en place les quête rendez vous ligne 213 la
dans le premier paragraphe ajoutez simplement avant le dernier else :
elsif id_quête == "ID de la quête"
return 'nom de votre image (nom de la quête).png'
Puis deuxiéme paragraphe ajoutez simplement avant le dernier else :
elsif id_quête == "ID de la quête"
return 'nom de votre image (descriptif de la quête).png'
################################################################################
#==============================================================================#
#============================ COMMANDE ========================================#
#==============================================================================#
- $game_quête.debut (permet de lancer le menu de quête)
- $game_quête.nouvelle_quête_principale(ID) (permet de demarrer la quête principale d'id "ID")
- $game_quête.quête_principale_fini(ID) (permet de terminer la quête principale d'id "ID")
- $game_quête.nouvelle_quête(ID) (permet de demarrer la quête secondaire d'id "ID")
- $game_quête.quête_fini(ID) (permet de terminer la quête secondaire d'id "ID")
#==============================================================================#
Si il y a un probleme : contact zeludtnecniv@gmail.com
=end
class Game_Quête < Game_Interpreter
attr_accessor :quêteS
attr_accessor :quêteP
attr_accessor :quêteF
attr_accessor :quêteP_F
#|=============================================================================|
#|======================================Initialization=========================|
#|=============================================================================|
def initialize
id = 0
idactuel = 1
@POSselecteur2 = 1
end
#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#
############################RECAPITULATIF#######################################
#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#
#|=============================================================================|
#|==============================Nouvelle Quête Principale======================|
#|=============================================================================|
def nouvelle_quête_principale(id)
if $quête_P.include?([id,0]) == false
if $quête_P.include?([id,1]) == false
$quête_P.push([id,0])
end
end
end
#|=============================================================================|
#|==============================Fin Quête Principale===========================|
#|=============================================================================|
def quête_principale_fini(id)
if $quête_P.include?([id,0]) == true
a = $quête_P.index([id,0])
$quête_P.fill([id,1],a)
end
end
#|=============================================================================|
#|======================================Nouvelle Quête=========================|
#|=============================================================================|
def nouvelle_quête(id)
if $quête_S.include?(id) == false
$quête_S.push(id)
end
end
#|=============================================================================|
#|======================================Quête terminer=========================|
#|=============================================================================|
def quête_fini(id)
if $quête_S.include?(id) == true
if $quête_F.include?(id) == false
$quête_F.push(id)
end
$quête_S.delete(id)
end
end
#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#
################################################################################
#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@#
#|=============================================================================|
#|===================================Quête principale point====================|
#|===================================acquisition image=========================|
#|=============================================================================|
def image_q_principale(id_quête)
if 1 == 0
wait 1
else
return '00menu quête-q-quête-1'
end
end
def image_q_principale_d(id_quête)
if 1 == 0
wait 1
else
return '00menu quête-d-quête-1'
end
end
#|=============================================================================|
#ne pas toucher cette partie
def id_quête_s(adresse)
return id_quête($quête_S[adresse-1])
end
def id_quête_s_d(adresse)
return id_quête_d($quête_S[adresse-1])
end
def id_quête_f(adresse)
return id_quête($quête_F[adresse-1])
end
def id_quête_f_d(adresse)
return id_quête_d($quête_F[adresse-1])
end
#|=============================================================================|
#|=============================point d'acquisition quête=======================|
#|====================================secondaire===============================|
#|=============================================================================|
def id_quête(id_quête)
if 0 == 1
wait 1
else
return '00menu quête-q-quête-1'
end
end
def id_quête_d(id_quête)
if 0 == 1
wait 1
else
return '00menu quête-d-quête-1'
end
end
#|=============================================================================|
#|=============================fin acquisition quête===========================|
#|====================================secondaire===============================|
#|=============================================================================|
#|===========================================================================================|
#|======================================MENU=================================================|
#|===========================================================================================|
#|===========================================================================================|
#|======================================Initialization=======================================|
#|===========================================================================================|
def debut
screen.pictures[200].show('00menu quête-0principale.png', 0, 0, 0, 100, 100, 255, 0)
screen.pictures[201].show('00menu quête-selecteur type.png', 0, 20, 20, 100, 100, 255, 0)
screen.pictures[214].show('00menu quête-selecteur quête.png', 0, 158, 20, 100, 100, 255, 0)
@POSselecteur1 = 1
@POSselecteur2 = 1
@sousmenu = 1
@menuactuel = 1
wait 5
menu1
end
def menu1
#|=============================================================================|
#|======================================Debut script===========================|
#|=============================================================================|
#====================================menu type de quête =======================#
while 0 == 0
if @POSselecteur1 == 1
if Input.press?(:DOWN) == true
Sound.play_cursor
screen.pictures[201].move( 0, 20, 114, 100, 100, 255, 0, 1)
@POSselecteur1 = 2
wait 5
RPG::SE.stop
end
if Input.press?(:UP) == true
Sound.play_cursor
screen.pictures[201].show('00menu level up-petit selecteur.png', 0, 24, 319, 100, 100, 255, 0)
@POSselecteur1 = 4
wait 5
end
if Input.press?(:C) == true
Sound.play_ok
debut1
wait 5
end
elsif @POSselecteur1 == 2
if Input.press?(:DOWN) == true
Sound.play_cursor
screen.pictures[201].move( 0, 20, 209, 100, 100, 255, 0, 1)
@POSselecteur1 = 3
wait 5
end
if Input.press?(:UP) == true
Sound.play_cursor
screen.pictures[201].move( 0, 20, 20, 100, 100, 255, 0, 1)
@POSselecteur1 = 1
wait 5
end
if Input.press?(:C) == true
Sound.play_ok
debut2
wait 5
end
elsif @POSselecteur1 == 3
if Input.press?(:DOWN) == true
Sound.play_cursor
screen.pictures[201].show('00menu level up-petit selecteur.png', 0, 24, 319, 100, 100, 255, 0)
@POSselecteur1 = 4
wait 5
end
if Input.press?(:UP) == true
Sound.play_cursor
screen.pictures[201].move( 0, 20, 114, 100, 100, 255, 0, 1)
@POSselecteur1 = 2
wait 5
end
if Input.press?(:C) == true
Sound.play_ok
debut3
wait 5
end
elsif @POSselecteur1 == 4
if Input.press?(:DOWN) == true
Sound.play_cursor
screen.pictures[201].show('00menu quête-selecteur type.png', 0, 20, 20, 100, 100, 255, 0)
@POSselecteur1 = 1
wait 5
end
if Input.press?(:UP) == true
Sound.play_cursor
screen.pictures[201].show('00menu quête-selecteur type.png', 0, 20, 209, 100, 100, 255, 0)
@POSselecteur1 = 3
wait 5
end
if Input.press?(:C) == true
Sound.play_ok
screen.pictures[200].erase
screen.pictures[201].erase
screen.pictures[214].erase
wait 5
break
end
end
wait 5
end
end
#|=============================================================================|
#|==============================Initialization menu secondaire=================|
#|=============================================================================|
def debut1
if $quête_P.length == 0
Sound.play_buzzer
else
if $quête_P.length >= 5
$indice = 4
else
$indice = ($quête_P.length - 1)
end
@a = $indice*2
while 1 == 1
if @a >=0
screen.pictures[202+$indice*2-@a].show(image_q_principale($indice-@a/2), 0, 164, 26+($indice-@a/2)*54, 100, 100, 255, 0)
if $quête_P[$indice-@a/2][1] == 1
screen.pictures[202+$indice*2-@a+1].show('00menu quête-q-quête-grisée.png', 0, 158, 20+($indice-@a/2)*54, 100, 100, 255, 0)
end
@a -= 2
wait 1
else
break
end
end
screen.pictures[212].show(image_q_principale_d(0), 0, 154, 319, 100, 100, 255, 0)
if $quête_P[0][1] == 1
screen.pictures[213].show('00menu quête-d-quête-grisée.png', 0, 154, 319, 100, 100, 255, 0)
end
@idactuel = 0
@POSselecteur2 = 1
menuqp
end
end
def debut2
if $quête_S.length == 0
Sound.play_buzzer
else
if $quête_S.length >= 5
$indice = 4
else
$indice = ($quête_S.length-1)
end
@a = $indice
while 1 == 1
if @a >=0
screen.pictures[202+$indice-@a].show(id_quête($quête_S[$indice-@a]), 0, 164, 26+($indice-@a)*54, 100, 100, 255, 0)
@a -= 1
wait 1
else
break
end
end
screen.pictures[208].show(id_quête_s_d(0), 0, 154, 319, 100, 100, 255, 0)
@idactuel = 1
@POSselecteur2 = 1
menu2
end
end
def debut3
if $quête_F.length == 0
Sound.play_buzzer
else
if $quête_F.length >= 5
$indice = 4
else
$indice = $quête_F.length-1
end
i = $indice
while i >= 0
screen.pictures[202+i].show(id_quête($quête_F[i]), 0, 164, 26+(i)*54, 100, 100, 255, 0)
wait 1
i -= 1
end
screen.pictures[208].show(id_quête_f_d(0), 0, 154, 319, 100, 100, 255, 0)
@idactuel = 1
@POSselecteur2 = 1
menu3
end
end
#==============================================================================#
#==============================menu quête Principale===========================#
#==============================================================================#
def menuqp
while 0 == 0
screen.pictures[212].erase
screen.pictures[213].erase
screen.pictures[212].show(image_q_principale_d((@idactuel+@POSselecteur2-1)% $quête_P.length), 0, 154, 319, 100, 100, 255, 0)
if $quête_P[(@idactuel+@POSselecteur2-1)% $quête_P.length][1] == 1
screen.pictures[213].show('00menu quête-d-quête-grisée.png', 0, 154, 319, 100, 100, 255, 0)
end
if @POSselecteur2 == 1 ######################################################################################
if Input.press?(:UP) == true
if $indice == 0
Sound.play_buzzer
elsif $quête_P.length <= 5
Sound.play_cursor
screen.pictures[214].move( 0, 158, (20+($indice)*54), 100, 100, 255, 0, 1)
@POSselecteur2 = $indice+1
else
@idactuel = (@idactuel-1) % ($quête_P.length-1)
Sound.play_cursor
screen.pictures[202].erase
screen.pictures[203].erase
screen.pictures[204].erase
screen.pictures[205].erase
screen.pictures[206].erase
screen.pictures[207].erase
screen.pictures[208].erase
screen.pictures[209].erase
screen.pictures[210].erase
screen.pictures[211].erase
screen.pictures[202].show(image_q_principale(@idactuel), 0, 164, 26, 100, 100, 255, 0)
if $quête_P[@idactuel][1] == 1
screen.pictures[203].show('00menu quête-q-quête-grisée.png', 0, 158, 20, 100, 100, 255, 0)
end
screen.pictures[204].show(image_q_principale((@idactuel+1)% $quête_P.length), 0, 164, 80, 100, 100, 255, 0)
if $quête_P[(@idactuel+1)% $quête_P.length][1] == 1
screen.pictures[205].show('00menu quête-q-quête-grisée.png', 0, 158, 74, 100, 100, 255, 0)
end
screen.pictures[206].show(image_q_principale((@idactuel+2)% $quête_P.length), 0, 164, 134, 100, 100, 255, 0)
if $quête_P[(@idactuel+2)% $quête_P.length][1] == 1
screen.pictures[207].show('00menu quête-q-quête-grisée.png', 0, 158, 128, 100, 100, 255, 0)
end
screen.pictures[208].show(image_q_principale((@idactuel+3)% $quête_P.length), 0, 164, 188, 100, 100, 255, 0)
if $quête_P[(@idactuel+3)% $quête_P.length][1] == 1
screen.pictures[209].show('00menu quête-q-quête-grisée.png', 0, 158, 182, 100, 100, 255, 0)
end
screen.pictures[210].show(image_q_principale((@idactuel+4)% $quête_P.length), 0, 164, 242, 100, 100, 255, 0)
if $quête_P[(@idactuel+4)% $quête_P.length][1] == 1
screen.pictures[211].show('00menu quête-q-quête-grisée.png', 0, 158, 236, 100, 100, 255, 0)
end
end
wait 5
end
if Input.press?(:DOWN) == true
if $indice >= 1
Sound.play_cursor
screen.pictures[214].move( 0, 158, 74, 100, 100, 255, 0, 1)
@POSselecteur2 = 2
else
Sound.play_buzzer
end
wait 5
end
elsif @POSselecteur2 == 5 ################################################################################
if Input.press?(:UP) == true
Sound.play_cursor
screen.pictures[214].move( 0, 158, 182, 100, 100, 255, 0, 1)
@POSselecteur2 = 4
wait 5
end
if Input.press?(:DOWN) == true
if $quête_P.length <= 5
Sound.play_cursor
screen.pictures[214].move( 0, 158, 20, 100, 100, 255, 0, 1)
@POSselecteur2 = 1
else
@idactuel = (@idactuel+1) % $quête_P.length
Sound.play_cursor
screen.pictures[202].erase
screen.pictures[203].erase
screen.pictures[204].erase
screen.pictures[205].erase
screen.pictures[206].erase
screen.pictures[207].erase
screen.pictures[208].erase
screen.pictures[209].erase
screen.pictures[210].erase
screen.pictures[211].erase
screen.pictures[202].show(image_q_principale(@idactuel), 0, 164, 26, 100, 100, 255, 0)
if $quête_P[@idactuel][1] == 1
screen.pictures[203].show('00menu quête-q-quête-grisée.png', 0, 158, 20, 100, 100, 255, 0)
end
screen.pictures[204].show(image_q_principale((@idactuel+1)% $quête_P.length), 0, 164, 80, 100, 100, 255, 0)
if $quête_P[(@idactuel+1)% $quête_P.length][1] == 1
screen.pictures[205].show('00menu quête-q-quête-grisée.png', 0, 158, 74, 100, 100, 255, 0)
end
screen.pictures[206].show(image_q_principale((@idactuel+2)% $quête_P.length), 0, 164, 134, 100, 100, 255, 0)
if $quête_P[(@idactuel+2)% $quête_P.length][1] == 1
screen.pictures[207].show('00menu quête-q-quête-grisée.png', 0, 158, 128, 100, 100, 255, 0)
end
screen.pictures[208].show(image_q_principale((@idactuel+3)% $quête_P.length), 0, 164, 188, 100, 100, 255, 0)
if $quête_P[(@idactuel+3)% $quête_P.length][1] == 1
screen.pictures[209].show('00menu quête-q-quête-grisée.png', 0, 158, 182, 100, 100, 255, 0)
end
screen.pictures[210].show(image_q_principale((@idactuel+4)% $quête_P.length), 0, 164, 242, 100, 100, 255, 0)
if $quête_P[(@idactuel+4)% $quête_P.length][1] == 1
screen.pictures[211].show('00menu quête-q-quête-grisée.png', 0, 158, 236, 100, 100, 255, 0)
end
end
wait 5
end
elsif (@POSselecteur2 != 1) and (@POSselecteur2 != 5) ####################################################
if Input.press?(:DOWN) == true
if $indice > @POSselecteur2-1
Sound.play_cursor
@POSselecteur2 += 1
screen.pictures[214].move( 0, 158, 20+(@POSselecteur2-1)*54, 100, 100, 255, 0, 1)
else
Sound.play_cursor
@POSselecteur2 = 1
screen.pictures[214].move( 0, 158, 20, 100, 100, 255, 0, 1)
end
wait 5
end
if Input.press?(:UP) == true
Sound.play_cursor
@POSselecteur2 -= 1
screen.pictures[214].move( 0, 158, 20+(@POSselecteur2-1)*54, 100, 100, 255, 0, 1)
wait 5
end
end #####################################################################################################
if Input.press?(:B) == true
Sound.play_cancel
@menuactuel = 1
screen.pictures[201].erase
screen.pictures[202].erase
screen.pictures[203].erase
screen.pictures[204].erase
screen.pictures[205].erase
screen.pictures[206].erase
screen.pictures[207].erase
screen.pictures[208].erase
screen.pictures[209].erase
screen.pictures[210].erase
screen.pictures[211].erase
screen.pictures[212].erase
screen.pictures[213].erase
screen.pictures[214].move( 0, 158, 20, 100, 100, 255, 0, 1)
screen.pictures[201].show('00menu quête-selecteur type.png', 0, 20, 20, 100, 100, 255, 0)
wait 5
break
end
wait 5
end
end
#==============================================================================#
#==========================fin menu quête principale===========================#
#==============================================================================#
#==============================================================================#
#==============================menu quête secondaire===========================#
#==============================================================================#
def menu2
while 0 == 0
screen.pictures[208].erase
screen.pictures[208].show(id_quête_s_d((@idactuel+@POSselecteur2-1)% $quête_S.length), 0, 154, 319, 100, 100, 255, 0)
if @POSselecteur2 == 1 ######################################################################################
if Input.press?(:UP) == true
if $indice == 0
Sound.play_buzzer
elsif $quête_S.length <= 5
Sound.play_cursor
screen.pictures[214].move( 0, 158, (20+($indice)*54), 100, 100, 255, 0, 1)
@POSselecteur2 = $indice+1
else
@idactuel = (@idactuel-1) % $quête_S.length
Sound.play_cursor
screen.pictures[202].erase
screen.pictures[203].erase
screen.pictures[204].erase
screen.pictures[205].erase
screen.pictures[206].erase
screen.pictures[202].show(id_quête_s(@idactuel), 0, 164, 26, 100, 100, 255, 0)
screen.pictures[203].show(id_quête_s((@idactuel+1)% $quête_S.length), 0, 164, 26+1*54, 100, 100, 255, 0)
screen.pictures[204].show(id_quête_s((@idactuel+2)% $quête_S.length), 0, 164, 26+2*54, 100, 100, 255, 0)
screen.pictures[205].show(id_quête_s((@idactuel+3)% $quête_S.length), 0, 164, 26+3*54, 100, 100, 255, 0)
screen.pictures[206].show(id_quête_s((@idactuel+4)% $quête_S.length), 0, 164, 26+4*54, 100, 100, 255, 0)
end
wait 5
end
if Input.press?(:DOWN) == true
if $indice >= 1
Sound.play_cursor
screen.pictures[214].move( 0, 158, 74, 100, 100, 255, 0, 1)
@POSselecteur2 = 2
else
Sound.play_buzzer
end
wait 5
end
elsif @POSselecteur2 == 5 ################################################################################
if Input.press?(:UP) == true
Sound.play_cursor
screen.pictures[214].move( 0, 158, 182, 100, 100, 255, 0, 1)
@POSselecteur2 = 4
wait 5
end
if Input.press?(:DOWN) == true
if $quête_S.length <= 5
Sound.play_cursor
screen.pictures[214].move( 0, 158, 20, 100, 100, 255, 0, 1)
@POSselecteur2 = 1
else
Sound.play_cursor
@idactuel = (@idactuel+1) % $quête_S.length
Sound.play_cursor
screen.pictures[202].erase
screen.pictures[203].erase
screen.pictures[204].erase
screen.pictures[205].erase
screen.pictures[206].erase
screen.pictures[202].show(id_quête_s(@idactuel), 0, 164, 26, 100, 100, 255, 0)
screen.pictures[203].show(id_quête_s((@idactuel+1) % $quête_S.length), 0, 164, 26+1*54, 100, 100, 255, 0)
screen.pictures[204].show(id_quête_s((@idactuel+2) % $quête_S.length), 0, 164, 26+2*54, 100, 100, 255, 0)
screen.pictures[205].show(id_quête_s((@idactuel+3) % $quête_S.length), 0, 164, 26+3*54, 100, 100, 255, 0)
screen.pictures[206].show(id_quête_s((@idactuel+4) % $quête_S.length), 0, 164, 26+4*54, 100, 100, 255, 0)
end
wait 5
end
elsif (@POSselecteur2 != 1) and (@POSselecteur2 != 5) ####################################################
if Input.press?(:DOWN) == true
if $indice > @POSselecteur2-1
Sound.play_cursor
@POSselecteur2 += 1
screen.pictures[214].move( 0, 158, 20+(@POSselecteur2-1)*54, 100, 100, 255, 0, 1)
else
Sound.play_cursor
@POSselecteur2 = 1
screen.pictures[214].move( 0, 158, 20, 100, 100, 255, 0, 1)
end
wait 5
end
if Input.press?(:UP) == true
Sound.play_cursor
@POSselecteur2 -= 1
screen.pictures[214].move( 0, 158, 20+(@POSselecteur2-1)*54, 100, 100, 255, 0, 1)
wait 5
end
end #####################################################################################################
if Input.press?(:B) == true
Sound.play_cancel
@menuactuel = 1
screen.pictures[201].erase
screen.pictures[202].erase
screen.pictures[203].erase
screen.pictures[204].erase
screen.pictures[205].erase
screen.pictures[206].erase
screen.pictures[208].erase
screen.pictures[214].move( 0, 158, 20, 100, 100, 255, 0, 1)
screen.pictures[201].show('00menu quête-selecteur type.png', 0, 20, 114, 100, 100, 255, 0)
wait 5
break
end
wait 5
end
end
#=============================================================================#
#=========================fin menu quête secondaire===========================#
#=============================================================================#
#=============================================================================#
#=============================menu quête Fini=================================#
#=============================================================================#
def menu3
while 0 == 0
screen.pictures[208].erase
screen.pictures[208].show(id_quête_f_d(@idactuel+@POSselecteur2-1), 0, 154, 319, 100, 100, 255, 0)
if @POSselecteur2 == 1 ######################################################################################
if Input.press?(:UP) == true
if $indice == 0
Sound.play_buzzer
elsif $quête_F.length <= 5
Sound.play_cursor
screen.pictures[214].move( 0, 158, (20+($indice)*54), 100, 100, 255, 0, 1)
@POSselecteur2 = $indice+1
else
@idactuel = (@idactuel-1) % $quête_F.length
Sound.play_cursor
screen.pictures[202].erase
screen.pictures[203].erase
screen.pictures[204].erase
screen.pictures[205].erase
screen.pictures[206].erase
screen.pictures[202].show(id_quête_f((@idactuel) % $quête_F.length), 0, 164, 26, 100, 100, 255, 0)
screen.pictures[203].show(id_quête_f((@idactuel+1) % $quête_F.length), 0, 164, 26+1*54, 100, 100, 255, 0)
screen.pictures[204].show(id_quête_f((@idactuel+2) % $quête_F.length), 0, 164, 26+2*54, 100, 100, 255, 0)
screen.pictures[205].show(id_quête_f((@idactuel+3) % $quête_F.length), 0, 164, 26+3*54, 100, 100, 255, 0)
screen.pictures[206].show(id_quête_f((@idactuel+4) % $quête_F.length), 0, 164, 26+4*54, 100, 100, 255, 0)
end
wait 5
end
if Input.press?(:DOWN) == true
if $indice >= 1
Sound.play_cursor
screen.pictures[214].move( 0, 158, 74, 100, 100, 255, 0, 1)
@POSselecteur2 = 2
else
Sound.play_buzzer
end
wait 5
end
elsif @POSselecteur2 == 5 ################################################################################
if Input.press?(:UP) == true
Sound.play_cursor
screen.pictures[214].move( 0, 158, 182, 100, 100, 255, 0, 1)
@POSselecteur2 = 4
wait 5
end
if Input.press?(:DOWN) == true
if % $quête_F.length <= 5
Sound.play_cursor
screen.pictures[214].move( 0, 158, 20, 100, 100, 255, 0, 1)
@POSselecteur2 = 1
else
Sound.play_cursor
@idactuel = (@idactuel+1) % $quête_F.length
Sound.play_cursor
screen.pictures[202].erase
screen.pictures[203].erase
screen.pictures[204].erase
screen.pictures[205].erase
screen.pictures[206].erase
screen.pictures[202].show(id_quête_f((@idactuel) % $quête_F.length), 0, 164, 26, 100, 100, 255, 0)
screen.pictures[203].show(id_quête_f((@idactuel+1) % $quête_F.length), 0, 164, 26+1*54, 100, 100, 255, 0)
screen.pictures[204].show(id_quête_f((@idactuel+2) % $quête_F.length), 0, 164, 26+2*54, 100, 100, 255, 0)
screen.pictures[205].show(id_quête_f((@idactuel+3) % $quête_F.length), 0, 164, 26+3*54, 100, 100, 255, 0)
screen.pictures[206].show(id_quête_f((@idactuel+4) % $quête_F.length), 0, 164, 26+4*54, 100, 100, 255, 0)
end
wait 5
end
elsif (@POSselecteur2 != 1) and (@POSselecteur2 != 5) ####################################################
if Input.press?(:DOWN) == true
if $indice > @POSselecteur2-1
Sound.play_cursor
@POSselecteur2 += 1
screen.pictures[214].move( 0, 158, 20+(@POSselecteur2-1)*54, 100, 100, 255, 0, 1)
else
Sound.play_cursor
@POSselecteur2 = 1
screen.pictures[214].move( 0, 158, 20, 100, 100, 255, 0, 1)
end
wait 5
end
if Input.press?(:UP) == true
Sound.play_cursor
@POSselecteur2 -= 1
screen.pictures[214].move( 0, 158, 20+(@POSselecteur2-1)*54, 100, 100, 255, 0, 1)
wait 5
end
end #####################################################################################################
if Input.press?(:B) == true
Sound.play_cancel
@menuactuel = 1
screen.pictures[201].erase
screen.pictures[202].erase
screen.pictures[203].erase
screen.pictures[204].erase
screen.pictures[205].erase
screen.pictures[206].erase
screen.pictures[208].erase
screen.pictures[214].move( 0, 158, 20, 100, 100, 255, 0, 1)
screen.pictures[201].show('00menu quête-selecteur type.png', 0, 20, 209, 100, 100, 255, 0)
wait 5
break
end
wait 5
end
end
#==============================================================================#
#==========================fin menu quête Fini=================================#
#==============================================================================#
#|=============================================================================|
#|========================Fin script===========================================|
#|=============================================================================|
end
Pour chaque quête vous allez devoir crées 2 image :
- Une pour le Titre de votre quête de 354 x 38 pixel
Ex :
- Une pour la Description de la quête de 374 x 81 pixel
Ex :
Une fois chaque image crée ajoutez les a votre jeu grâce au gestionnaire de ressource (touche F10)
Il faut les ajoutez dans le dossier « Graphics/Pictures »
il faut aussi ces image la :
http://rapidshare.com/files/2066262488/image%20menu%20qu%C3%AAte.rar
ce sont celle du menu tout simple
III.) Mise en place des quête dans le script :
Pour mettre en place une quête dans le script il y a 2 possibilité si c’est une quête principale ou une quête secondaire :
Dans les 2 cas le script fonctionne ainsi :
Il faut associé chacune de vos quête a un identifiant (ID) un simple nombre qui definira votre quête.
Par exemple ma quête de l’ourson perdu est la 3 éme du jeu son ID est donc 3
Les quête principale et secondaire sont indépendante il peut donc y avoir un quête secondaire et une quête principale qui ai le même ID mais 2 quête principale ou 2 quête secondaire ne le peuvent pas
##Pour les quête principale :
Rendez-vous ligne 164 dans la section point d’acquisition quête principale
La dans le bloc commencent par « def image_q_principale(id_quête) » ajoutez cela entre le
« wait 1 » et le « else » :
- Code:
elsif $quête_P[id_quête][0] == ID
return 'NOM DE VOTRE QUÊTE'
Remplacer ensuite « ID » par l’id de votre quête (ex : 3 pour la quête de l’ourson)
Remplacer « NOM DE VOTRE QUÊTE » par le nom de l’image titre de votre quête (1 er image crée dans le paragraphe 2)
Ensuite dans le bloc commencant par « def image_d_principale(id_quête) » ajoutez cela entre le
« wait 1 » et le « else » :
- Code:
elsif $quête_P[id_quête][0] == ID
return 'DESCRIPTION DE VOTRE QUÊTE'
Remplacer de nouveau « ID » par l’id de votre quête (ex : 3 pour la quête de l’ourson)
Remplacer « DESCRIPTION DE VOTRE QUÊTE » par le nom de l’image descriptive de votre quête (2 éme image crée dans le paragraphe 2)
Voila vous avez fini de mettre en place votre quête principale
Si vous devez en ajouter une nouvelle il suffit de réitèrer cette étape en ajoutant cette fois-ci le bloc de code entre votre ajout et « else »
##Pour les quête secondaire
Même principe mais dans la section acquisition des quête secondaires aux environs de la ligne 220
La dans le bloc commencent par « def id_quête(id_quête)» ajoutez cela entre le
« wait 1 » et le « else » :
- Code:
elsif id_quête == ID
return 'NOM DE VOTRE QUÊTE'
Remplacer ensuite « ID » par l’id de votre quête
Remplacer « NOM DE VOTRE QUÊTE » par le nom de l’image titre de votre quête (1 er image crée dans le paragraphe 2)
Ensuite dans le bloc commencant par « def id_quête_d(id_quête)» ajoutez cela entre le
« wait 1 » et le « else » :
- Code:
elsif id_quête == ID
return 'DESCRIPTION DE VOTRE QUÊTE'
Remplacer de nouveau « ID » par l’id de votre quête (ex : 3 pour la quête de l’ourson)
Remplacer « DESCRIPTION DE VOTRE QUÊTE » par le nom de l’image descriptive de votre quête (2 éme image crée dans le paragraphe 2)
Voila vous avez fini de mettre en place votre quête secondaire
Si vous devez en ajouter une nouvelle il suffit de réitèrer cette étape en ajoutant cette fois-ci le bloc de code entre votre ajout et « else »
Voilou ici ce termine la mise en place des quête.
LISTING DES COMMANDE UTIL :
- $game_quête.debut (permet de lancer le menu de quête)
- $game_quête.nouvelle_quête_principale(ID) (permet de demarrer la quête principale d'id "ID")
- $game_quête.quête_principale_fini(ID) (permet de terminer la quête
- Nexus40Membre
- Nombre de messages : 7
Age : 25
Localisation : Chez moi
Distinction : aucune
Date d'inscription : 09/06/2013
Re: script menu quête simple (mes debut dans le scriptage)
Dim 9 Juin 2013 - 16:01
Il m'a l'air simpa ton script!
Je vais le testé et bonne chance dans le scriptage
Je vais le testé et bonne chance dans le scriptage
- LightNoxMembre
- Nombre de messages : 1759
Age : 34
Localisation : Chez Moi ^^
Date d'inscription : 10/04/2008
Re: script menu quête simple (mes debut dans le scriptage)
Dim 9 Juin 2013 - 18:40
un script de menu de quête assez simple (qui doit être horriblement programmer Very Happy )
Déjà merci du partage ^^
Et j'ai regarder ton script, et c'est pas si mal coder que ça tu as une architecture de programmation intéressante et je te félicite pour ton 1er script c'est vraiment pas mal du tout, en plus tu t'es attaquer a un système de quête qui n'est pas "normalement" a la porter des scripteur débutant, alors bravo ^^
Continue comme ça
- KorndorStaffeux retraité
- Nombre de messages : 4959
Age : 111
Localisation : Erem Vehyx
Distinction : Champion de boxe et au lit ! :O [Wax]
Être Mythique [Mister]
Papi Korndor qui a l'ostéoporose [Skillo]
Soldat Ikéa [Coco']
Un bonhomme, un vrai ! [Neresis]
Vieillard acariâtre [Didier Gustin]
Date d'inscription : 16/12/2007
Re: script menu quête simple (mes debut dans le scriptage)
Dim 9 Juin 2013 - 22:15
Ça a l'air très satisfaisant en effet ! ^^
Si je peux me permettre deux critiques pour t'aider à l'améliorer :
1. Les fenêtres dans d'autres fenêtres, ce n'est pas du plus bel effet à mon goût ! ^^
Ça rend la lecture plus difficile
2. Le fond vert ne devrait pas dépasser de l'intérieur desdites fenêtres, toujours pour une question esthétique !
Il vaut mieux voir la map derrière en fond à mon humble avis ^^
Sinon, bravo, bonne continuation !
Si je peux me permettre deux critiques pour t'aider à l'améliorer :
1. Les fenêtres dans d'autres fenêtres, ce n'est pas du plus bel effet à mon goût ! ^^
Ça rend la lecture plus difficile
2. Le fond vert ne devrait pas dépasser de l'intérieur desdites fenêtres, toujours pour une question esthétique !
Il vaut mieux voir la map derrière en fond à mon humble avis ^^
Sinon, bravo, bonne continuation !
- vincent26Membre
- Nombre de messages : 766
Age : 29
Localisation : baume de transit le village paumé
Distinction : aucune
Date d'inscription : 17/08/2010
Re: script menu quête simple (mes debut dans le scriptage)
Lun 10 Juin 2013 - 13:44
merci beaucoup
(il est vrai que je pourrait changer le fond vert ^^)
j'ai surtout essayer de faire un script très simple pour l'ajout de nouvelle quête
parce que j'avais trouvé des menu de quête sur internet mais qui était horrible a mettre en place
(il est vrai que je pourrait changer le fond vert ^^)
j'ai surtout essayer de faire un script très simple pour l'ajout de nouvelle quête
parce que j'avais trouvé des menu de quête sur internet mais qui était horrible a mettre en place
- RelMembre
- Nombre de messages : 352
Localisation : Le Mans, Sarthes
Distinction : aucune
Date d'inscription : 18/01/2013
Re: script menu quête simple (mes debut dans le scriptage)
Lun 10 Juin 2013 - 15:59
Salut
pas mal ton script
mais pourrais tu expliquer comment on fait une nouvelle quête
avec toutes les étapes, car je n'y comprend rien
ça fait comme même beaucoup de texte
Merci pour le Newbi
pas mal ton script
mais pourrais tu expliquer comment on fait une nouvelle quête
avec toutes les étapes, car je n'y comprend rien
ça fait comme même beaucoup de texte
Merci pour le Newbi
- KorndorStaffeux retraité
- Nombre de messages : 4959
Age : 111
Localisation : Erem Vehyx
Distinction : Champion de boxe et au lit ! :O [Wax]
Être Mythique [Mister]
Papi Korndor qui a l'ostéoporose [Skillo]
Soldat Ikéa [Coco']
Un bonhomme, un vrai ! [Neresis]
Vieillard acariâtre [Didier Gustin]
Date d'inscription : 16/12/2007
Re: script menu quête simple (mes debut dans le scriptage)
Lun 10 Juin 2013 - 21:55
Aucun problème Vincent !
Merci pour ton partage et tes efforts
Merci pour ton partage et tes efforts
- vincent26Membre
- Nombre de messages : 766
Age : 29
Localisation : baume de transit le village paumé
Distinction : aucune
Date d'inscription : 17/08/2010
Re: script menu quête simple (mes debut dans le scriptage)
Mer 3 Juil 2013 - 1:58
salut petit édit sur la démo j'avais oublier quelque débris de mes test qui était inutile et j'ai améliorer les explication d'utilisation sinon j'ai constater quelque chose de gênant lors des sauvegardes il faut obligatoirement quittez le jeu "proprement" c'est a dire en passant par le menu au cour du jeu sinon la sauvegarde est buguer
j'ai aussi ajouté une autre image pour le fond du menu il suffit de la charger dans l'éditeur elle remplacera automatiquement l'ancienne si vous voulez tester
Daster en cas j'ai mieux réexpliquer dans la nouvelle démo si tu a toujours des problème je suis là
voilou voilou
PS: si certaine personne veulent réorganiser le menu ouvrer le fichier "menu quête.pdn" vous pouvez déplacer a votre convenance chaque cadre ou tout changer envoyer moi simplement une image de fond et je pourrait transformer le script au cas par cas si certain le souhaite mon adresse mail est donnée dans le script en cas ou sur mon profil
j'ai aussi ajouté une autre image pour le fond du menu il suffit de la charger dans l'éditeur elle remplacera automatiquement l'ancienne si vous voulez tester
Daster en cas j'ai mieux réexpliquer dans la nouvelle démo si tu a toujours des problème je suis là
voilou voilou
PS: si certaine personne veulent réorganiser le menu ouvrer le fichier "menu quête.pdn" vous pouvez déplacer a votre convenance chaque cadre ou tout changer envoyer moi simplement une image de fond et je pourrait transformer le script au cas par cas si certain le souhaite mon adresse mail est donnée dans le script en cas ou sur mon profil
- RelMembre
- Nombre de messages : 352
Localisation : Le Mans, Sarthes
Distinction : aucune
Date d'inscription : 18/01/2013
Re: script menu quête simple (mes debut dans le scriptage)
Jeu 4 Juil 2013 - 14:09
Euh... merci Vincent26,
mais pourrait-tu faire un rapide tutoriel
de ton script, car j'ai beau avoir regardé
les explications, je ne comprends toujours
pas comment créer une nouvelle quête.
Quelques lignes suffiront.
Merci.
mais pourrait-tu faire un rapide tutoriel
de ton script, car j'ai beau avoir regardé
les explications, je ne comprends toujours
pas comment créer une nouvelle quête.
Quelques lignes suffiront.
Merci.
- vincent26Membre
- Nombre de messages : 766
Age : 29
Localisation : baume de transit le village paumé
Distinction : aucune
Date d'inscription : 17/08/2010
Re: script menu quête simple (mes debut dans le scriptage)
Sam 6 Juil 2013 - 1:43
voila en cas si ya encore des question ^^
- Natsu'Membre
- Nombre de messages : 4
Distinction : aucune
Date d'inscription : 16/11/2013
Re: script menu quête simple (mes debut dans le scriptage)
Lun 25 Nov 2013 - 21:21
Salut, est-ce que tu pourrais mettre ta démo sur Médiafire s'il te plaît car je ne peut pas télécharger sur rapidshare
- SpytjeAdministrateur
- Nombre de messages : 5935
Localisation : La terre
Distinction : Spiraliste [Korn']
Forestia : Projet du mois juillet 2014
Papy Pulkigrat [Yama']
Date d'inscription : 16/03/2008
Re: script menu quête simple (mes debut dans le scriptage)
Mar 26 Nov 2013 - 0:39
Pourquoi est ce que tu ne pourrais pas télécharger sur Rapidshare ?
PS : Nécropost de plus de 4 mois...
PS : Nécropost de plus de 4 mois...
_________________
- Natsu'Membre
- Nombre de messages : 4
Distinction : aucune
Date d'inscription : 16/11/2013
Re: script menu quête simple (mes debut dans le scriptage)
Mar 26 Nov 2013 - 19:20
Car quand j'y vais, mon ordi bug.
- Natsu'Membre
- Nombre de messages : 4
Distinction : aucune
Date d'inscription : 16/11/2013
Re: script menu quête simple (mes debut dans le scriptage)
Mar 26 Nov 2013 - 19:23
PS : Désolé pour le nécropost !
- SpytjeAdministrateur
- Nombre de messages : 5935
Localisation : La terre
Distinction : Spiraliste [Korn']
Forestia : Projet du mois juillet 2014
Papy Pulkigrat [Yama']
Date d'inscription : 16/03/2008
Re: script menu quête simple (mes debut dans le scriptage)
Mar 26 Nov 2013 - 19:30
Bon je vais te le télécharger et l'upload sur Mediafire.
PS : Les doubles "post" non plus ne sont pas toléré... Utilise la fonction éditer qui n'est pas la pour décorer.
Edit : les fichiers ne sont plus disponibles sur Rapidshare merci de contacter l'auteur du post pour un réupload de la démo et des ressources utilisées dans ce script.
PS : Les doubles "post" non plus ne sont pas toléré... Utilise la fonction éditer qui n'est pas la pour décorer.
Edit : les fichiers ne sont plus disponibles sur Rapidshare merci de contacter l'auteur du post pour un réupload de la démo et des ressources utilisées dans ce script.
_________________
- HeavenStaffeux retraité
- Nombre de messages : 2441
Age : 23
Localisation : Alpes-Maritimes VIRILITÉ OLALA
Distinction : Aucune
Date d'inscription : 18/10/2012
Re: script menu quête simple (mes debut dans le scriptage)
Sam 30 Nov 2013 - 14:34
J'avais télécharger le fichier, j'l'upload quand je peux^^ (dans longtemps certainement :/)
Heav'n
Heav'n
- vincent26Membre
- Nombre de messages : 766
Age : 29
Localisation : baume de transit le village paumé
Distinction : aucune
Date d'inscription : 17/08/2010
Re: script menu quête simple (mes debut dans le scriptage)
Dim 8 Déc 2013 - 22:20
Je reupload dès que possible si c'est vraiment nécessaire
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum