- nithisMembre
- Nombre de messages : 258
Age : 28
Localisation : Belgique
Distinction : Master Show 2012
Date d'inscription : 01/03/2012
2 scriptes pour sauver mon monde =) (résolut)
Mer 23 Avr 2014 - 0:26
Bien le bonsoir/jour communauté, pour mon projet j'ai trois scripts qu'il me faut absolument
1- Je voudrai faire un jeux de carte (pour celui la je préfère ne pas trop donner d'info) si vous êtes intéresser dite le moi par mp.
2- Je voudrait tous simplement que ce scripte vx ace soit converti pour vx
https://rpgmakervx.1fr1.net/t12995-ln-equipex-v13
Si possible avec 640* 480* de résolution.
Voila je me doute que sa peu paraître beaucoup mais ces scripts me sont vitales si je veut pouvoir sortir une démo, une chose est sur je travaillerai les graph de sorte à avoir quelque chose de très beau
Je vous dit merci d'avance et bonne nuit ^^
1- Je voudrai faire un jeux de carte (pour celui la je préfère ne pas trop donner d'info) si vous êtes intéresser dite le moi par mp.
2- Je voudrait tous simplement que ce scripte vx ace soit converti pour vx
https://rpgmakervx.1fr1.net/t12995-ln-equipex-v13
Si possible avec 640* 480* de résolution.
Voila je me doute que sa peu paraître beaucoup mais ces scripts me sont vitales si je veut pouvoir sortir une démo, une chose est sur je travaillerai les graph de sorte à avoir quelque chose de très beau
Je vous dit merci d'avance et bonne nuit ^^
- 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: 2 scriptes pour sauver mon monde =) (résolut)
Mer 23 Avr 2014 - 0:32
Pour les scripts je ne peux malheureusement pas t'aider mais je te souhaites de trouver ce que tu cherches car ton projet en vaut plus que la peine !
- driccMembre
- Nombre de messages : 2760
Localisation : Lille
Distinction : Altruiste - Incarnation de la Patience [Mist']
Date d'inscription : 10/08/2009
Re: 2 scriptes pour sauver mon monde =) (résolut)
Ven 25 Avr 2014 - 18:24
nithis a écrit:Bien le bonsoir/jour communauté, pour mon projet j'ai trois scripts qu'il me faut absolument
1- Je voudrai faire un jeux de carte (pour celui la je préfère ne pas trop donner d'info) si vous êtes intéresser dite le moi par mp.
Je suis en plein dedans Sauf que le mien est pour VXAce . du coup , ça risque de ne pas t'interesser .
Mais les regles du mien sont figées et j'ai bien avancé . je le présenterait surement bientot vu que j'arrive à faire un combat complet .
Par contre , je ne suis pas sur que ça fonctionnera avec une resolution autre que la normale .
Pour info , je suis dessus depuis plus de 2 mois ! ça te donne une idée du temps que ça va prendre si tu trouves un scripteur pret à s'investir . Moi , je ne veux plus faire de VX , je suis passé à VXAce à 100% .
Sous VX , j'en avait fait un déja :
https://rpgmakervx.1fr1.net/t10904-vxcard-jeu-de-carte-a-collectionner
Je ne me souviens plus si il restait des bugs , ça fait longtemps .
Pour le script artisanat , tu as jeté un oeil sur le wiki référence ?
http://rmvxace.wikia.com/wiki/RPG_Maker_VX_Ace_Master_Script_List
Sinon , je me dit qu'il devrait etre possible de faire en event .
Et pour le script à convertir , il faut que tu saches que le RGSS3 est vraiment trés différent du RGSS2 surtout dans la gestion des fenetres . donc convertir , ça veux dire quasiment refaire de zero .
- nithisMembre
- Nombre de messages : 258
Age : 28
Localisation : Belgique
Distinction : Master Show 2012
Date d'inscription : 01/03/2012
Re: 2 scriptes pour sauver mon monde =) (résolut)
Sam 26 Avr 2014 - 16:39
Je me suis peut être mal exprimer, j'ai en fait "inventer" un jeux de carte et je veux trouver quelqu'un pour m'aider à le réaliser. Je voulait que sa soit une surprise pour la démo mais je n'y arriverai pas seule et sans sa je ne peut pas sortir de démo =S.
Pour l'artisana azeru tente quelque chose en event j'attend le résultat ^^
Et pour la conversion j'imagine que sa donne au moins les bases à celui qui veu tenter qulque chose.
Voici les règle de base: Le jeux fonctionne avec les règles de pierre papier ciseau. Sauf que je les remplaces par guerrier spectre et mage. (je précise que le jeux est composer de 9 carte et pas 3 mais c'est pour l'exemple).
Règle avancer: Vous avez 3 point bonus (10 points en vrais mais c'est pour l'exemple)
- Si je joue pierre face à papier je perd .
- Si je joue pierre+1(bonus) face à papier il y à égalité.
- Si je joue pierre+2(bonus) face à papier alors je gagne malgré le désavantage.
(sans oublier que mon adversaire aussi à des bonus donc que si j'ai la carte la plus faible et qu'on à le même nombre de bonus je perd).
Déroulement de la partie:
Les cartes sont disposer comme ceci:
(Je précise une fois encore que en vrais il y à 9 cartes)
1: Avec le curseur vous choisissez la carte, quand vous cliquez dessus, la carte apparaît par dessus les autres comme sur le screen.
2: Quand vous cliquez sur elle, vous choisissez le nombre de points bonus que vous voulez rajoutez. Votre carte vas ensuite au milieu du tapis en face de celle de votre adversaire et celons la carte et les bonus il y à soit un vainqueur soit égalité (peut importe le résultat, les deux cartes sont détruites).
3: Le jeux ce passe donc en 9 manche c'est dire temps qu'il y a encore des cartes à jouer, et le gagnan de la partie est celui qui a gagner le plus de manche.
(Il n'y aura pas vraiment de IA, le jeux adversaire sera préparer au préalable)
Voila si vous avez des questions ou des idées je vous écoute ^^
Pour l'artisana azeru tente quelque chose en event j'attend le résultat ^^
Et pour la conversion j'imagine que sa donne au moins les bases à celui qui veu tenter qulque chose.
Voici les règle de base: Le jeux fonctionne avec les règles de pierre papier ciseau. Sauf que je les remplaces par guerrier spectre et mage. (je précise que le jeux est composer de 9 carte et pas 3 mais c'est pour l'exemple).
Règle avancer: Vous avez 3 point bonus (10 points en vrais mais c'est pour l'exemple)
- Si je joue pierre face à papier je perd .
- Si je joue pierre+1(bonus) face à papier il y à égalité.
- Si je joue pierre+2(bonus) face à papier alors je gagne malgré le désavantage.
(sans oublier que mon adversaire aussi à des bonus donc que si j'ai la carte la plus faible et qu'on à le même nombre de bonus je perd).
Déroulement de la partie:
Les cartes sont disposer comme ceci:
(Je précise une fois encore que en vrais il y à 9 cartes)
1: Avec le curseur vous choisissez la carte, quand vous cliquez dessus, la carte apparaît par dessus les autres comme sur le screen.
2: Quand vous cliquez sur elle, vous choisissez le nombre de points bonus que vous voulez rajoutez. Votre carte vas ensuite au milieu du tapis en face de celle de votre adversaire et celons la carte et les bonus il y à soit un vainqueur soit égalité (peut importe le résultat, les deux cartes sont détruites).
3: Le jeux ce passe donc en 9 manche c'est dire temps qu'il y a encore des cartes à jouer, et le gagnan de la partie est celui qui a gagner le plus de manche.
(Il n'y aura pas vraiment de IA, le jeux adversaire sera préparer au préalable)
Voila si vous avez des questions ou des idées je vous écoute ^^
- vincent26Membre
- Nombre de messages : 766
Age : 28
Localisation : baume de transit le village paumé
Distinction : aucune
Date d'inscription : 17/08/2010
Re: 2 scriptes pour sauver mon monde =) (résolut)
Dim 27 Avr 2014 - 14:41
Salut je ne peut malheureusement pas t'aider je ne suis pas dispo les 2 prochaine semaine mais si ça tient toujours aprés je serait la
- driccMembre
- Nombre de messages : 2760
Localisation : Lille
Distinction : Altruiste - Incarnation de la Patience [Mist']
Date d'inscription : 10/08/2009
Re: 2 scriptes pour sauver mon monde =) (résolut)
Mer 30 Avr 2014 - 18:56
J'avais bien compris que tu avais tes propres regles
C'est pas trop compliqué à priori . je ne garanti rien mais je vais voir .
OK , je vois que ce sont les bonus qui comptent le plus en fait . si tu n'avais pas fait ce systeme , il y aurait eu égalité à chaque fois .
C'est pas trop compliqué à priori . je ne garanti rien mais je vais voir .
OK , je vois que ce sont les bonus qui comptent le plus en fait . si tu n'avais pas fait ce systeme , il y aurait eu égalité à chaque fois .
- driccMembre
- Nombre de messages : 2760
Localisation : Lille
Distinction : Altruiste - Incarnation de la Patience [Mist']
Date d'inscription : 10/08/2009
Re: 2 scriptes pour sauver mon monde =) (résolut)
Mer 7 Mai 2014 - 19:19
Bon , je me suis enfin mis sérieusement .
Les images sont là pour illustrer , je les ait bricolé avec ce que tu m'as donné .
Mais la carte selectionnée change bien quand on va vers le haut ou le bas .
les 2 "10" , c'est les points bonus . et les 2 "0" , les points gagnés par chaque joueur . ils sont au bon endroit ? (j'enleverait les cadres aprés et je centrerait le chiffre aussi ) .
Les 2 listes de cartes vont bouger . je dois les recadrer .
Mais c'est pas si simple que ça finalement . Cet écran sera composé de 8 fenetres ! on en voit déja 6 sur ma capture écran , il en manque un au milieu et il manque la fenetre de choix du nombre de points bonus à jouer .
Les images sont là pour illustrer , je les ait bricolé avec ce que tu m'as donné .
Mais la carte selectionnée change bien quand on va vers le haut ou le bas .
les 2 "10" , c'est les points bonus . et les 2 "0" , les points gagnés par chaque joueur . ils sont au bon endroit ? (j'enleverait les cadres aprés et je centrerait le chiffre aussi ) .
Les 2 listes de cartes vont bouger . je dois les recadrer .
Mais c'est pas si simple que ça finalement . Cet écran sera composé de 8 fenetres ! on en voit déja 6 sur ma capture écran , il en manque un au milieu et il manque la fenetre de choix du nombre de points bonus à jouer .
- darksbMembre
- Nombre de messages : 7
Distinction : aucune
Date d'inscription : 06/05/2014
Re: 2 scriptes pour sauver mon monde =) (résolut)
Mer 7 Mai 2014 - 20:37
Pour le crafting va voir ce script : csca-crafting, et si tu veux cree les profession csca-profession
j'utilise deja quelque script fait par ce scripteur, et ils fonction bien et assez bien ecrits
j'utilise deja quelque script fait par ce scripteur, et ils fonction bien et assez bien ecrits
- nithisMembre
- Nombre de messages : 258
Age : 28
Localisation : Belgique
Distinction : Master Show 2012
Date d'inscription : 01/03/2012
Re: 2 scriptes pour sauver mon monde =) (résolut)
Ven 9 Mai 2014 - 1:55
Dricc: Je voie que sa avance bien j'ai hâte de voire le résultat final ^^, mais sa me fait un peu peur car je voie l'icone de vxace, j’espère que tu na pas oublier que le projet est sur (vx).
Pour le système de craft c'est opérationnel j'aurai déjà du le présenter mais j'ai beaucoup de mal avec les programmes pour filmer son bureau =S. Je vais donc enlevez cette partie de la demande et je vous montrerez tous ça quand j'aurai trouver une solution^^.
Pour le système de craft c'est opérationnel j'aurai déjà du le présenter mais j'ai beaucoup de mal avec les programmes pour filmer son bureau =S. Je vais donc enlevez cette partie de la demande et je vous montrerez tous ça quand j'aurai trouver une solution^^.
- driccMembre
- Nombre de messages : 2760
Localisation : Lille
Distinction : Altruiste - Incarnation de la Patience [Mist']
Date d'inscription : 10/08/2009
Re: 2 scriptes pour sauver mon monde =) (résolut)
Ven 9 Mai 2014 - 19:14
Raaaaaahhhh ...
ben oui , je l'ai fait pour VXAce . Je ne me souvenais plus .
LE pire , c'est que j'ai fini .
http://www.mediafire.com/download/0d81pg0xk3l871k/JeuCarte.zip
Ben tant pis , je vais le poster , histoire de dire que j'ai pas bossé pour rien .
Je ne te le ferais pas par contre , je refuse de bosser sous VX .
ben oui , je l'ai fait pour VXAce . Je ne me souvenais plus .
LE pire , c'est que j'ai fini .
http://www.mediafire.com/download/0d81pg0xk3l871k/JeuCarte.zip
Ben tant pis , je vais le poster , histoire de dire que j'ai pas bossé pour rien .
Je ne te le ferais pas par contre , je refuse de bosser sous VX .
- nithisMembre
- Nombre de messages : 258
Age : 28
Localisation : Belgique
Distinction : Master Show 2012
Date d'inscription : 01/03/2012
Re: 2 scriptes pour sauver mon monde =) (résolut)
Ven 9 Mai 2014 - 21:16
Ah bin la je sait pas quoi dire, du coup je me retrouve sans rien =S
- driccMembre
- Nombre de messages : 2760
Localisation : Lille
Distinction : Altruiste - Incarnation de la Patience [Mist']
Date d'inscription : 10/08/2009
Re: 2 scriptes pour sauver mon monde =) (résolut)
Ven 9 Mai 2014 - 22:31
Ben, désolé ...
Enfin ... tu as essayé de passer ton projet sous VXAce ?
Avec le mien , ça fait 2 scripts maintenant dont tu as besoin et qui sont sous VXAce . ça commence à en valloir la peine , non ?
Du point de vue interface , ça change peu de choses . La façon de mapper est strictement identique , les evenements aussi sont pareils .
Mais au niveau script , ça change tout . comme je te le disait , passer un script de VX à VXAce ou le contraire revient à le refaire entierement .
Enfin ... tu as essayé de passer ton projet sous VXAce ?
Avec le mien , ça fait 2 scripts maintenant dont tu as besoin et qui sont sous VXAce . ça commence à en valloir la peine , non ?
Du point de vue interface , ça change peu de choses . La façon de mapper est strictement identique , les evenements aussi sont pareils .
Mais au niveau script , ça change tout . comme je te le disait , passer un script de VX à VXAce ou le contraire revient à le refaire entierement .
- nithisMembre
- Nombre de messages : 258
Age : 28
Localisation : Belgique
Distinction : Master Show 2012
Date d'inscription : 01/03/2012
Re: 2 scriptes pour sauver mon monde =) (résolut)
Ven 9 Mai 2014 - 23:20
Je ne peu passer mon projet sur vxace pour deux scriptes alors que j'utilise plus d'une vingtaine de scriptes sur vx qui n'existent pas sur ace! Pas grave j'essayerai de trouver une autre solution, j'attend aussi que vincent26 soit libre il pourra m'aider =P
- vincent26Membre
- Nombre de messages : 766
Age : 28
Localisation : baume de transit le village paumé
Distinction : aucune
Date d'inscription : 17/08/2010
Re: 2 scriptes pour sauver mon monde =) (résolut)
Lun 12 Mai 2014 - 19:34
Pour toute les partie as-t-on toujours les même carte ?
EDIT :
Bon alors j'ai beaucoup de question :
Etant donnée que tu veut faire 9 carte est-ce que tu compte faire en sorte que certaine carte et une force plus d'une fois inférieur ou supérieur a une autre ? par exemple il te faudrait 3 point bonus pour revenir a égaliter.
Le plateau va changer mais compte tu garder les même emplacement de carte et les différente zone ?
car je vais m'ajuster au plateau que tu as donnée :
As-tu le fond d'une carte pour mettre au carte de l'ia ? ou voit-on les carte de l'ia ?
comment le jeu est-il lancée ? via un event j'imagine ^^
Sinon tu utilise un script pour augmenter la taille de l'écran peut-tu me le donnée ^^
Pour les texte dans les zone du plateau de jeu tu veut afficher avec une police particulière ?
les chiffre veut-tu qu'il soit afficher a partir du script ou veut-tu en faire des image pour ne pas avoir de différence flagrante avec la texture du plateau et des carte ?
voilla voila
EDIT :
Bon alors j'ai beaucoup de question :
Etant donnée que tu veut faire 9 carte est-ce que tu compte faire en sorte que certaine carte et une force plus d'une fois inférieur ou supérieur a une autre ? par exemple il te faudrait 3 point bonus pour revenir a égaliter.
Le plateau va changer mais compte tu garder les même emplacement de carte et les différente zone ?
car je vais m'ajuster au plateau que tu as donnée :
- Spoiler:
- Spoiler:
As-tu le fond d'une carte pour mettre au carte de l'ia ? ou voit-on les carte de l'ia ?
comment le jeu est-il lancée ? via un event j'imagine ^^
Sinon tu utilise un script pour augmenter la taille de l'écran peut-tu me le donnée ^^
Pour les texte dans les zone du plateau de jeu tu veut afficher avec une police particulière ?
les chiffre veut-tu qu'il soit afficher a partir du script ou veut-tu en faire des image pour ne pas avoir de différence flagrante avec la texture du plateau et des carte ?
voilla voila
- vincent26Membre
- Nombre de messages : 766
Age : 28
Localisation : baume de transit le village paumé
Distinction : aucune
Date d'inscription : 17/08/2010
Re: 2 scriptes pour sauver mon monde =) (résolut)
Mer 14 Mai 2014 - 20:40
Petit up pour l'attente de réponse
- nithisMembre
- Nombre de messages : 258
Age : 28
Localisation : Belgique
Distinction : Master Show 2012
Date d'inscription : 01/03/2012
Re: 2 scriptes pour sauver mon monde =) (résolut)
Mer 14 Mai 2014 - 22:39
Holala je n'avait pas vue ton poste désoler donc je vais tacher de répondre pour le mieux ^^.
- Pour les cartes, non il n'y à pas de niveaux de puissance ça marche de manière à ce que la carte et battue par tel ou tel carte et bat tel ou tel autre carte. je vais te faire un shéma tout de suite sa sera plus claire.
- Seule les graphs du plateau vont changer, les emplacement restent comme tu la décrie.
- Je vais faire les cartes images par images.
- Tu à raison pour le fond je vais créer sa tous de suite et je te le passe.
- Pour le texte oui je voudrait utiliser une police spéciale je te l'envoie aussi, le jeux se lance effectivement par event ^^.
- Et pour finir je veux que les chiffres apparaissent en image
Voila les scriptes pour la résolution
Voila je pense avoir répondu à toutes tes questions je te donne toutes les images et le shéma de suite. Si tu à encore des questions n'hésite pas ^^.
- Pour les cartes, non il n'y à pas de niveaux de puissance ça marche de manière à ce que la carte et battue par tel ou tel carte et bat tel ou tel autre carte. je vais te faire un shéma tout de suite sa sera plus claire.
- Seule les graphs du plateau vont changer, les emplacement restent comme tu la décrie.
- Je vais faire les cartes images par images.
- Tu à raison pour le fond je vais créer sa tous de suite et je te le passe.
- Pour le texte oui je voudrait utiliser une police spéciale je te l'envoie aussi, le jeux se lance effectivement par event ^^.
- Et pour finir je veux que les chiffres apparaissent en image
Voila les scriptes pour la résolution
- Résolution screen:
- # ResolutionVX v 1.2 -- FenixFyreX
# SET UP YOUR RESOLUTION HERE:
Graphics.resize_screen(640,480)
# The default is (544,416)
### DO NOT EDIT BELOW UNLESS YOU KNOW WHAT YOU ARE DOING!!! ###
class Game_Temp
attr_accessor :temp_bitmap # Temporary Bitmap
alias initialize_temp_bit initialize unless $@
def initialize
initialize_temp_bit
@temp_bitmap = Bitmap.new(Graphics.width,Graphics.height)
end
end
class Game_Map
#--------------------------------------------------------------------------
# * Scroll Setup
#--------------------------------------------------------------------------
def setup_scroll
@scroll_direction = 2
@scroll_rest = 0
@scroll_speed = 4
@margin_x = (width - (Graphics.width/32)) * 256 / 2 # Screen non-display width /2
@margin_y = (height - (Graphics.height/32)) * 256 / 2 # Screen non-display height /2
end
#--------------------------------------------------------------------------
# * Calculate X coordinate for parallax display
# bitmap : Parallax bitmap
#--------------------------------------------------------------------------
def calc_parallax_x(bitmap)
if bitmap == nil
return 0
elsif @parallax_loop_x
return @parallax_x / 16
elsif loop_horizontal?
return 0
else
w1 = bitmap.width - Graphics.width
w2 = @map.width * 32 - Graphics.width
if w1 <= 0 or w2 <= 0
return 0
else
return @parallax_x * w1 / w2 / 8
end
end
end
#--------------------------------------------------------------------------
# * Calculate Y coordinate for parallax display
# bitmap : Parallax bitmap
#--------------------------------------------------------------------------
def calc_parallax_y(bitmap)
if bitmap == nil
return 0
elsif @parallax_loop_y
return @parallax_y / 16
elsif loop_vertical?
return 0
else
h1 = bitmap.height - Graphics.height
h2 = @map.height * 32 - Graphics.height
if h1 <= 0 or h2 <= 0
return 0
else
return @parallax_y * h1 / h2 / 8
end
end
end
#--------------------------------------------------------------------------
# * Scroll Down
# distance : scroll distance
#--------------------------------------------------------------------------
def scroll_down(distance)
if loop_vertical?
@display_y += distance
@display_y %= @map.height * 256
@parallax_y += distance
else
last_y = @display_y
@display_y = [@display_y + distance, (height - (Graphics.height/32)) * 256].min
@parallax_y += @display_y - last_y
end
end
#--------------------------------------------------------------------------
# * Scroll Left
# distance : scroll distance
#--------------------------------------------------------------------------
def scroll_left(distance)
if loop_horizontal?
@display_x += @map.width * 256 - distance
@display_x %= @map.width * 256
@parallax_x -= distance
else
last_x = @display_x
@display_x = [@display_x - distance, 0].max
@parallax_x += @display_x - last_x
end
end
#--------------------------------------------------------------------------
# * Scroll Right
# distance : scroll distance
#--------------------------------------------------------------------------
def scroll_right(distance)
if loop_horizontal?
@display_x += distance
@display_x %= @map.width * 256
@parallax_x += distance
else
last_x = @display_x
@display_x = [@display_x + distance, (width - (Graphics.width/32)) * 256].min
@parallax_x += @display_x - last_x
end
end
#--------------------------------------------------------------------------
# * Scroll Up
# distance : scroll distance
#--------------------------------------------------------------------------
def scroll_up(distance)
if loop_vertical?
@display_y += @map.height * 256 - distance
@display_y %= @map.height * 256
@parallax_y -= distance
else
last_y = @display_y
@display_y = [@display_y - distance, 0].max
@parallax_y += @display_y - last_y
end
end
end
class Game_Player < Game_Character
CENTER_X = (Graphics.width / 2 - 16) * 8 # Screen center X coordinate * 8
CENTER_Y = (Graphics.height/ 2 - 16) * 8 # Screen center Y coordinate * 8
#--------------------------------------------------------------------------
# * Set Map Display Position to Center of Screen
# x : x-coordinate
# y : y-coordinate
#--------------------------------------------------------------------------
def center(x, y)
display_x = x * 256 - CENTER_X # Calculate coordinates
unless $game_map.loop_horizontal? # No loop horizontally?
max_x = ($game_map.width - (Graphics.width/32)) * 256 # Calculate max value
display_x = [0, [display_x, max_x].min].max # Adjust coordinates
end
display_y = y * 256 - CENTER_Y # Calculate coordinates
unless $game_map.loop_vertical? # No loop vertically?
max_y = ($game_map.height - (Graphics.height/32)) * 256 # Calculate max value
display_y = [0, [display_y, max_y].min].max # Adjust coordinates
end
$game_map.set_display_pos(display_x, display_y) # Change map location
end
end
class Sprite_Base < Sprite
#--------------------------------------------------------------------------
# * Start Animation
#--------------------------------------------------------------------------
def start_animation(animation, mirror = false)
dispose_animation
@animation = animation
return if @animation == nil
@animation_mirror = mirror
@animation_duration = @animation.frame_max * 4 + 1
load_animation_bitmap
@animation_sprites = []
if @animation.position != 3 or not @@animations.include?(animation)
if @use_sprite
for i in 0..15
sprite = ::Sprite.new(viewport)
sprite.visible = false
@animation_sprites.push(sprite)
end
unless @@animations.include?(animation)
@@animations.push(animation)
end
end
end
if @animation.position == 3
if viewport == nil
@animation_ox = Graphics.width / 2
@animation_oy = Graphics.height / 2
else
@animation_ox = viewport.rect.width / 2
@animation_oy = viewport.rect.height / 2
end
else
@animation_ox = x - ox + width / 2
@animation_oy = y - oy + height / 2
if @animation.position == 0
@animation_oy -= height / 2
elsif @animation.position == 2
@animation_oy += height / 2
end
end
end
end
class Sprite_Battler < Sprite_Base
#--------------------------------------------------------------------------
# * Frame Update
#--------------------------------------------------------------------------
def update
super
if @battler == nil
self.bitmap = nil
else
@use_sprite = @battler.use_sprite?
if @use_sprite
self.x = @battler.screen_x + ((Graphics.width - 640)/2)
self.y = @battler.screen_y + ((Graphics.height - 480)/2)
self.z = @battler.screen_z
update_battler_bitmap
end
setup_new_effect
update_effect
end
end
end
class Spriteset_Map
#--------------------------------------------------------------------------
# * Create Viewport
#--------------------------------------------------------------------------
def create_viewports
@viewport1 = Viewport.new(0, 0, Graphics.width, Graphics.height)
@viewport2 = Viewport.new(0, 0, Graphics.width, Graphics.height)
@viewport3 = Viewport.new(0, 0, Graphics.width, Graphics.height)
@viewport2.z = 50
@viewport3.z = 100
end
end
class Spriteset_Battle
#--------------------------------------------------------------------------
# * Create Viewport
#--------------------------------------------------------------------------
def create_viewports
@viewport1 = Viewport.new(0, 0, Graphics.width, Graphics.height)
@viewport2 = Viewport.new(0, 0, Graphics.width, Graphics.height)
@viewport3 = Viewport.new(0, 0, Graphics.width, Graphics.height)
@viewport2.z = 50
@viewport3.z = 100
end
#--------------------------------------------------------------------------
# * Create Battleback Sprite
#--------------------------------------------------------------------------
def create_battleback
source = $game_temp.background_bitmap
bitmap = Bitmap.new(Graphics.width+64, Graphics.height+64)
bitmap.stretch_blt(bitmap.rect, source, source.rect)
bitmap.radial_blur(90, 12)
@battleback_sprite = Sprite.new(@viewport1)
@battleback_sprite.bitmap = bitmap
@battleback_sprite.ox = 320
@battleback_sprite.oy = 240
@battleback_sprite.x = 272
@battleback_sprite.y = 176
@battleback_sprite.wave_amp = 8
@battleback_sprite.wave_length = 240
@battleback_sprite.wave_speed = 120
end
#--------------------------------------------------------------------------
# * Create Battlefloor Sprite
#--------------------------------------------------------------------------
def create_battlefloor
@battlefloor_sprite = Sprite.new(@viewport1)
@battlefloor_sprite.bitmap = Cache.system("BattleFloor")
@battlefloor_sprite.x = (Graphics.width/2) - (@battlefloor_sprite.bitmap.width/2)
@battlefloor_sprite.y = 192
@battlefloor_sprite.z = 1
@battlefloor_sprite.opacity = 128
end
end
class Window_Base < Window
#--------------------------------------------------------------------------
# * Constants
#--------------------------------------------------------------------------
WLH = (Graphics.width >= 640) ? 24 : (24+(Graphics.height-480)/5)+4 #Window Line Height
end
class Window_MenuStatus < Window_Selectable
#--------------------------------------------------------------------------
# * Object Initialization
# x : window X coordinate
# y : window Y coordinate
#--------------------------------------------------------------------------
def initialize(x, y)
super(x, y, Graphics.width-x, Graphics.height)
refresh
self.active = false
self.index = -1
end
#--------------------------------------------------------------------------
# * Refresh
#--------------------------------------------------------------------------
def 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 + 90, y)
draw_actor_level(actor, x, y + WLH * 1)
draw_actor_state(actor, x, y + WLH * 2)
draw_actor_hp(actor, x + 90, y + WLH * 1)
draw_actor_mp(actor, x + 90, y + WLH * 2)
end
end
end
class Window_SkillStatus < Window_Base
#--------------------------------------------------------------------------
# * Object Initialization
# x : window X coordinate
# y : window Y corrdinate
# actor : actor
#--------------------------------------------------------------------------
def initialize(x, y, actor)
super(x, y, Graphics.width, WLH + 32)
@actor = actor
refresh
end
end
class Window_Equip < Window_Selectable
#--------------------------------------------------------------------------
# * Object Initialization
# x : window X coordinate
# y : window Y corrdinate
# actor : actor
#--------------------------------------------------------------------------
def initialize(x, y, height, actor)
super(x, y, Graphics.width-(Graphics.height/2), height)
@actor = actor
refresh
self.index = 0
end
end
class Window_EquipStatus < Window_Base
#--------------------------------------------------------------------------
# * Object Initialization
# x : window X coordinate
# y : window Y corrdinate
# actor : actor
#--------------------------------------------------------------------------
def initialize(x, y, height, actor)
super(x, y, Graphics.height/2, height)
@actor = actor
refresh
end
end
class Window_Status < Window_Base
#--------------------------------------------------------------------------
# * Object Initialization
# actor : actor
#--------------------------------------------------------------------------
def initialize(actor)
super(0, 0, Graphics.width, Graphics.height)
@actor = actor
refresh
end
end
class Window_SaveFile < Window_Base
#--------------------------------------------------------------------------
# * Object Initialization
# file_index : save file index (0-3)
# filename : filename
#--------------------------------------------------------------------------
def initialize(file_index, filename)
height = ((Graphics.height-(WLH + 32))/4)
y = (WLH+32) + (height*file_index)
super(0, y, Graphics.width, height)
@file_index = file_index
@filename = filename
load_gamedata
refresh
@selected = false
end
end
class Window_ShopNumber < Window_Base
#--------------------------------------------------------------------------
# * Object Initialization
# x : window X coordinate
# y : window Y coordinate
#--------------------------------------------------------------------------
def initialize(x, y)
w = Graphics.width/2
h = Graphics.height-y
super(0, y, w, h)
@item = nil
@max = 1
@price = 0
@number = 1
end
#--------------------------------------------------------------------------
# * Refresh
#--------------------------------------------------------------------------
def refresh
y = 96
offset = (Graphics.width-640)+40
self.contents.clear
draw_item_name(@item, 0, y)
self.contents.font.color = normal_color
self.contents.draw_text(202-offset, y, 20, WLH, "×")
self.contents.draw_text(238-offset, y, 20, WLH, @number, 2)
self.cursor_rect.set(234-offset, y, 28, WLH)
draw_currency_value(@price * @number, 0-offset, y + WLH * 2, 264)
end
end
class Window_NumberInput < Window_Base
#--------------------------------------------------------------------------
# * Object Initialization
# digits_max : digit count
#--------------------------------------------------------------------------
def initialize
super(0, 0, Graphics.width, 64)
@number = 0
@digits_max = 6
@index = 0
self.opacity = 0
self.active = false
self.z += 9999
refresh
update_cursor
end
end
class Window_Message < Window_Selectable
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
def initialize
super(0, Graphics.width/4, Graphics.width, Graphics.width/4)
self.z = 200
self.active = false
self.index = -1
self.openness = 0
@opening = false # WIndow opening flag
@closing = false # Window closing flag
@text = nil # Remaining text to be displayed
@contents_x = 0 # X coordinate for drawing next character
@contents_y = 0 # Y coordinate for drawing next character
@line_count = 0 # Line count drawn up until now
@wait_count = 0 # Wait count
@background = 0 # Background type
@position = 2 # Display position
@show_fast = false # Fast forward flag
@line_show_fast = false # Fast forward by line flag
@pause_skip = false # Input standby omission flag
create_gold_window
create_number_input_window
create_back_sprite
end
#--------------------------------------------------------------------------
# * Create Gold Window
#--------------------------------------------------------------------------
def create_gold_window
@gold_window = Window_Gold.new(Graphics.width, 0)
@gold_window.x -= @gold_window.width
@gold_window.openness = 0
end
#--------------------------------------------------------------------------
# * Set Window Background and Position
#--------------------------------------------------------------------------
def reset_window
@background = $game_message.background
@position = $game_message.position
if @background == 0 # Normal window
self.opacity = 255
else # Dim Background and Make it Transparent
self.opacity = 0
end
case @position
when 0 # Top
self.y = 0
@gold_window.y = Graphics.height-@gold_window.height
when 1 # Middle
self.y = (Graphics.height/2)-(self.height/2)
@gold_window.y = 0
when 2 # Bottom
self.y = Graphics.height-self.height
@gold_window.y = 0
end
end
end
class Window_BattleMessage < Window_Message
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
def initialize
super
self.y = Graphics.height-self.height
self.openness = 255
@lines = []
refresh
end
end
class Window_PartyCommand < Window_Command
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
def initialize
s1 = Vocab::fight
s2 = Vocab::escape
super(Graphics.width/4, [s1, s2], 1, 4)
draw_item(0, true)
draw_item(1, $game_troop.can_escape)
self.active = false
end
end
class Window_ActorCommand < Window_Command
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
def initialize
super(Graphics.width/4, [], 1, 4)
self.active = false
end
end
class Window_TargetEnemy < Window_Command
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
def initialize
commands = []
@enemies = []
for enemy in $game_troop.members
next unless enemy.exist?
commands.push(enemy.name)
@enemies.push(enemy)
end
super(Graphics.width-(Graphics.width/4), commands, 2, 4)
end
end
class Window_BattleStatus < Window_Selectable
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
def initialize
super(0, 0, Graphics.width-(Graphics.width/4), 0)
refresh
self.active = false
end
#--------------------------------------------------------------------------
# * Draw Item
# index : Item number
#--------------------------------------------------------------------------
def draw_item(index)
rect = item_rect(index)
rect.x += 4
rect.width -= 8
self.contents.clear_rect(rect)
self.contents.font.color = normal_color
actor = $game_party.members[index]
draw_actor_name(actor, 4, rect.y)
draw_actor_state(actor, 114, rect.y, 48)
draw_actor_hp(actor, 174, rect.y, 120)
draw_actor_mp(actor, 305, rect.y, 70)
end
end
class Window_DebugLeft < Window_Selectable
#--------------------------------------------------------------------------
# * Object Initialization
# x : window X coordinate
# y : window Y corrdinate
#--------------------------------------------------------------------------
def initialize(x, y)
super(x, y, 176, Graphics.height)
self.index = 0
refresh
end
end
class Scene_Title < Scene_Base
#--------------------------------------------------------------------------
# * Create Command Window
#--------------------------------------------------------------------------
def create_command_window
s1 = Vocab::new_game
s2 = Vocab::continue
s3 = Vocab::shutdown
@commands = [s1,s2,s3]
width = 172
@commands.each {|w| ww = $game_temp.temp_bitmap.text_size(w).width
width = ww if ww > width }
@command_window = Window_Command.new(width, @commands)
@command_window.x = (Graphics.width/2) - (@command_window.width/2)
@command_window.y = Graphics.height - (@command_window.height*1.5)
if @continue_enabled # If continue is enabled
@command_window.index = 1 # Move cursor over command
else # If disabled
@command_window.draw_item(1, false) # Make command semi-transparent
end
@command_window.openness = 0
@command_window.open
end
end
class Scene_Menu < Scene_Base
#--------------------------------------------------------------------------
# * Start processing
#--------------------------------------------------------------------------
def start
super
create_menu_background
create_command_window
@gold_window = Window_Gold.new(0, Graphics.height)
@gold_window.y -= @gold_window.height
@status_window = Window_MenuStatus.new(@command_window.width, 0)
end
#--------------------------------------------------------------------------
# * Create Command Window
#--------------------------------------------------------------------------
def create_command_window
s1 = Vocab::item
s2 = Vocab::skill
s3 = Vocab::equip
s4 = Vocab::status
s5 = Vocab::save
s6 = Vocab::game_end
@commands = [s1, s2, s3, s4, s5, s6]
width = 160
@commands.each {|w| ww = $game_temp.temp_bitmap.text_size(w).width
width = ww if ww > width }
@command_window = Window_Command.new(160, @commands)
@command_window.index = @menu_index
if $game_party.members.size == 0 # If number of party members is 0
@command_window.draw_item(0, false) # Disable item
@command_window.draw_item(1, false) # Disable skill
@command_window.draw_item(2, false) # Disable equipment
@command_window.draw_item(3, false) # Disable status
end
if $game_system.save_disabled # If save is forbidden
@command_window.draw_item(4, false) # Disable save
end
end
end
class Scene_Item < Scene_Base
#--------------------------------------------------------------------------
# * Start processing
#--------------------------------------------------------------------------
def start
super
create_menu_background
@viewport = Viewport.new(0, 0, Graphics.width, Graphics.height)
@help_window = Window_Help.new
@help_window.viewport = @viewport
@item_window = Window_Item.new(0, @help_window.height, Graphics.width, Graphics.height-@help_window.height)
@item_window.viewport = @viewport
@item_window.help_window = @help_window
@item_window.active = false
@target_window = Window_MenuStatus.new(0, 0)
hide_target_window
end
#--------------------------------------------------------------------------
# * Show Target Window
# right : Right justification flag (if false, left justification)
#--------------------------------------------------------------------------
def show_target_window(right)
@item_window.active = false
width_remain = Graphics.width - @target_window.width
@target_window.x = right ? width_remain : 0
@target_window.visible = true
@target_window.active = true
if right
@viewport.rect.set(0, 0, width_remain, Graphics.height)
@viewport.ox = 0
else
@viewport.rect.set(@target_window.width, 0, width_remain, Graphics.height)
@viewport.ox = @target_window.width
end
end
#--------------------------------------------------------------------------
# * Hide Target Window
#--------------------------------------------------------------------------
def hide_target_window
@item_window.active = true
@target_window.visible = false
@target_window.active = false
@viewport.rect.set(0, 0, Graphics.width, Graphics.height)
@viewport.ox = 0
end
end
class Scene_Skill < Scene_Base
#--------------------------------------------------------------------------
# * Start processing
#--------------------------------------------------------------------------
def start
super
create_menu_background
@actor = $game_party.members[@actor_index]
@viewport = Viewport.new(0, 0, Graphics.width, Graphics.height)
@help_window = Window_Help.new
@help_window.viewport = @viewport
@status_window = Window_SkillStatus.new(0, @help_window.height, @actor)
@status_window.viewport = @viewport
@skill_window = Window_Skill.new(0, @help_window.height*2, Graphics.width, Graphics.height-(@help_window.height*2), @actor)
@skill_window.viewport = @viewport
@skill_window.help_window = @help_window
@target_window = Window_MenuStatus.new(0, 0)
hide_target_window
end
#--------------------------------------------------------------------------
# * Show Target Window
# right : Right justification flag (if false, left justification)
#--------------------------------------------------------------------------
def show_target_window(right)
@skill_window.active = false
width_remain = Graphics.width - @target_window.width
@target_window.x = right ? width_remain : 0
@target_window.visible = true
@target_window.active = true
if right
@viewport.rect.set(0, 0, width_remain, Graphics.height)
@viewport.ox = 0
else
@viewport.rect.set(@target_window.width, 0, width_remain, Graphics.height)
@viewport.ox = @target_window.width
end
end
#--------------------------------------------------------------------------
# * Hide Target Window
#--------------------------------------------------------------------------
def hide_target_window
@skill_window.active = true
@target_window.visible = false
@target_window.active = false
@viewport.rect.set(0, 0, Graphics.width, Graphics.height)
@viewport.ox = 0
end
end
class Scene_Equip < Scene_Base
#--------------------------------------------------------------------------
# * Start processing
#--------------------------------------------------------------------------
def start
super
create_menu_background
@actor = $game_party.members[@actor_index]
@help_window = Window_Help.new
create_item_windows
height = (Graphics.height-@item_windows[0].height)-@help_window.height
@equip_window = Window_Equip.new(Graphics.height/2, @help_window.height, height, @actor)
@equip_window.help_window = @help_window
@equip_window.index = @equip_index
@status_window = Window_EquipStatus.new(0, @help_window.height, height, @actor)
end
#--------------------------------------------------------------------------
# * Create Item Window
#--------------------------------------------------------------------------
def create_item_windows
@item_windows = []
for i in 0...EQUIP_TYPE_MAX
@item_windows[i] = Window_EquipItem.new(0, Graphics.height/2, Graphics.width, Graphics.height/2, @actor, i)
@item_windows[i].help_window = @help_window
@item_windows[i].visible = (@equip_index == i)
@item_windows[i].y = Graphics.height/2
@item_windows[i].height = Graphics.height/2
@item_windows[i].active = false
@item_windows[i].index = -1
end
end
end
class Scene_End < Scene_Base
#--------------------------------------------------------------------------
# * Create Command Window
#--------------------------------------------------------------------------
def create_command_window
s1 = Vocab::to_title
s2 = Vocab::shutdown
s3 = Vocab::cancel
width = 172
@commands = [s1, s2, s3]
@commands.each {|w| ww = $game_temp.temp_bitmap.text_size(w).width
width = ww if ww > width }
@command_window = Window_Command.new(width, @commands)
@command_window.x = (Graphics.width - @command_window.width) / 2
@command_window.y = (Graphics.height - @command_window.height) / 2
@command_window.openness = 0
end
end
class Scene_Shop < Scene_Base
#--------------------------------------------------------------------------
# * Start processing
#--------------------------------------------------------------------------
def start
super
create_menu_background
create_command_window
@help_window = Window_Help.new
@command_window.y = @help_window.height
gwy = Graphics.height-(@help_window.height*2)
@gold_window = Window_Gold.new(Graphics.width, @help_window.height)
@gold_window.x -= @gold_window.width
@dummy_window = Window_Base.new(0, @help_window.height*2, Graphics.width, gwy)
@sell_window = Window_ShopSell.new(0, @help_window.height*2, Graphics.width, gwy)
@sell_window.active = false
@sell_window.visible = false
@sell_window.help_window = @help_window
@number_window = Window_ShopNumber.new(0, @help_window.height*2)
@number_window.active = false
@number_window.visible = false
@status_window = Window_ShopStatus.new(Graphics.width/2, @help_window.height*2, Graphics.width/2, gwy)
@status_window.visible = false
@buy_window = Window_ShopBuy.new(0, @help_window.height*2, Graphics.width-@status_window.width, gwy)
@buy_window.active = false
@buy_window.visible = false
@buy_window.help_window = @help_window
end
end
class Scene_Battle < Scene_Base
#--------------------------------------------------------------------------
# * Create Information Display Viewport
#--------------------------------------------------------------------------
def create_info_viewport
@info_viewport = Viewport.new(0, Graphics.height, Graphics.width, Graphics.width/4)
@info_viewport.z = 100
@status_window = Window_BattleStatus.new
@party_command_window = Window_PartyCommand.new
@actor_command_window = Window_ActorCommand.new
@status_window.viewport = @info_viewport
@party_command_window.viewport = @info_viewport
@actor_command_window.viewport = @info_viewport
@status_window.x = Graphics.width/4
@actor_command_window.x = Graphics.width
@info_viewport.rect.y -= @status_window.height
@info_viewport.visible = false
end
#--------------------------------------------------------------------------
# * Update Information Display Viewport
#--------------------------------------------------------------------------
def update_info_viewport
@party_command_window.update
@actor_command_window.update
@status_window.update
if @party_command_window.active and @info_viewport.ox > 0
@info_viewport.ox -= 16
@info_viewport.ox = 0 if @info_viewport.ox < 0
elsif @actor_command_window.active and @info_viewport.ox < Graphics.width/4
@info_viewport.ox += 16
@info_viewport.ox = @actor_command_window.width if @info_viewport.ox > @actor_command_window.width
end
end
#--------------------------------------------------------------------------
# * Start Skill Selection
#--------------------------------------------------------------------------
def start_skill_selection
@help_window = Window_Help.new
height = (Graphics.height-@status_window.height)-@help_window.height
@skill_window = Window_Skill.new(0, @help_window.height, Graphics.width, height, @active_battler)
@skill_window.help_window = @help_window
@actor_command_window.active = false
end
#--------------------------------------------------------------------------
# * Start Item Selection
#--------------------------------------------------------------------------
def start_item_selection
@help_window = Window_Help.new
height = (Graphics.height-@status_window.height)-@help_window.height
@item_window = Window_Item.new(0, @help_window.height, Graphics.width, height)
@item_window.help_window = @help_window
@actor_command_window.active = false
end
end
Voila je pense avoir répondu à toutes tes questions je te donne toutes les images et le shéma de suite. Si tu à encore des questions n'hésite pas ^^.
- vincent26Membre
- Nombre de messages : 766
Age : 28
Localisation : baume de transit le village paumé
Distinction : aucune
Date d'inscription : 17/08/2010
Re: 2 scriptes pour sauver mon monde =) (résolut)
Jeu 15 Mai 2014 - 12:39
Du coup le perso a toujours les même carte ?
sinon voila la démo :
https://www.mediafire.com/?x0ppamqolhtwtbh
j'ai mis des explication mais je sait pas si ce sera assez claire ^^
J'ai mis la possibilité de régler la vitesse en début de script parce que la démo et mise en super speed XD
Tu peut aussi modifier les différent son
Du coup j’attends tes graphisme pour les nombre pour finir et ceux des texte (victoire défaite égalité)
sinon voila la démo :
https://www.mediafire.com/?x0ppamqolhtwtbh
j'ai mis des explication mais je sait pas si ce sera assez claire ^^
J'ai mis la possibilité de régler la vitesse en début de script parce que la démo et mise en super speed XD
Tu peut aussi modifier les différent son
Du coup j’attends tes graphisme pour les nombre pour finir et ceux des texte (victoire défaite égalité)
- nithisMembre
- Nombre de messages : 258
Age : 28
Localisation : Belgique
Distinction : Master Show 2012
Date d'inscription : 01/03/2012
Re: 2 scriptes pour sauver mon monde =) (résolut)
Jeu 15 Mai 2014 - 22:17
Je vient de rentrée donc je commence les images que maintenant mais sa devrait aller très vite. Sinon j'aurait peut être du le dire ici aussi mais en fait le jeux commence avec 3 cartes chacun et les cartes se rajoute par paire au fur et à mesure que l'histoire avance. Peut-on le régler dans le script? Sinon c'est pas très grave je préfère pas trop qu'on s'attarde la dessus. En tous cas tu à fait un travaille vraiment super et en un temps record je suis vraiment ravie ^^ encore merci Vincent26 =) je te le revaudrait .
- vincent26Membre
- Nombre de messages : 766
Age : 28
Localisation : baume de transit le village paumé
Distinction : aucune
Date d'inscription : 17/08/2010
Re: 2 scriptes pour sauver mon monde =) (résolut)
Ven 16 Mai 2014 - 0:32
Mis a jour pour la prise en compte de l'ajout de carte :
https://www.mediafire.com/?x0ppamqolhtwtbh
l'ajout ce fait par rapport a la possession d'un objet par le héros
https://www.mediafire.com/?x0ppamqolhtwtbh
l'ajout ce fait par rapport a la possession d'un objet par le héros
- nithisMembre
- Nombre de messages : 258
Age : 28
Localisation : Belgique
Distinction : Master Show 2012
Date d'inscription : 01/03/2012
Re: 2 scriptes pour sauver mon monde =) (résolut)
Sam 24 Mai 2014 - 18:43
Tous est terminer ^^, j'aimerai remercier vincent26 pour son aide, et si un modo passe par la peut il lui accorder ces points =). Si vous voulez voire le résultat vous pouvez aller voir le poste de mon projet ^^.
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|