|
| [Script RMVX] Fenêtre additionnelle | |
| | |
Auteur | Message |
---|
Naqqah
Messages : 218
| Sujet: Re: [Script RMVX] Fenêtre additionnelle Mer 28 Déc - 21:24 | |
| C'était souligné ? En fait, le trait finissait bien après le titre, c'était pas ça. Je souligné comme par balise. Juste le texte, en fait. | |
| | | chaipokoi
Messages : 438
| Sujet: Re: [Script RMVX] Fenêtre additionnelle Jeu 29 Déc - 10:03 | |
| oui je comprends en fait , pour souligner le script dessine un rectangle rouge, j'ai donc fait un algorithme qui calcule la longueur que doit faire le rectangle pour souligner tout le titre, mais cet algorithme ne fonctionne qui si tout les caractères du titre font la même taille ce qui n'est visiblement pas le cas avec ta police .
Pourrais-tu m'envoyer ta police stp ? je vais voir ce que je peux faire ^^ | |
| | | Naqqah
Messages : 218
| Sujet: Re: [Script RMVX] Fenêtre additionnelle Jeu 29 Déc - 13:00 | |
| J'utilise Tempus Sans ITC. Si tu es sous Vista ou 7, tu devrais l'avoir (possible de XP la contienne aussi). Si tu ne l'as pas, je te donne un lien.
On ne peut pas souligner un texte avec du RGSS2 avec une « balise » spéciale alors que l'on peux mettre en gras ? Tu es obligé de dessiner un rectangle ? Parce que le résultat n'est pas vraiment ce que j'attends... | |
| | | chaipokoi
Messages : 438
| Sujet: Re: [Script RMVX] Fenêtre additionnelle Jeu 29 Déc - 14:48 | |
| Non le Rgss reste du ruby, de base, il n'est pas fait pour créer d'interfaces graphiques contrairement à html Grâce à la balise : - Code:
-
<u></u> Je suis obligé de dessiner un rectangle en guise de trait de soulignement :/ après je peux gérer la taille de rectangle etc... mais je vais faire ce que je peux ^^ | |
| | | Naqqah
Messages : 218
| Sujet: Re: [Script RMVX] Fenêtre additionnelle Jeu 29 Déc - 15:17 | |
| Alors non, pas la peine, merci. Je pensais que l'on pouvait souligner. Tant pis, merci quand même. | |
| | | chaipokoi
Messages : 438
| Sujet: Re: [Script RMVX] Fenêtre additionnelle Jeu 29 Déc - 15:49 | |
| merci à toi j'ai redécouvert pas mal de trucs grâce à toi ^^ | |
| | | Zangther
Messages : 444
| Sujet: Re: [Script RMVX] Fenêtre additionnelle Jeu 29 Déc - 18:22 | |
| - chaipokoi a écrit:
- Non le Rgss reste du ruby, de base, il n'est pas fait pour créer d'interfaces graphiques contrairement à html
No... Just NO ! Et pis, personne n'utilise la balise 'u' en HTML, c'est des span avec un style CSS... | |
| | | chaipokoi
Messages : 438
| Sujet: Re: [Script RMVX] Fenêtre additionnelle Jeu 29 Déc - 19:14 | |
| - Citation :
- chaipokoi a écrit:
Non le Rgss reste du ruby, de base, il n'est pas fait pour créer d'interfaces graphiques contrairement à html
No... Just NO !
Non NO , le ruby nativement ne gère pas d'interface graphique. Et le rggs n'est qu'une bibliothèque ruby. - Citation :
- Et pis, personne n'utilise la balise 'u' en HTML, c'est des span avec un style CSS...
bah personne sauf moi -_-' et me dis pas que pour un soulignement ponctuel tu va t'emmerder avec des spans.perso je met deux balises 'u' et on en parle plus. | |
| | | Zangther
Messages : 444
| Sujet: Re: [Script RMVX] Fenêtre additionnelle Jeu 29 Déc - 19:46 | |
| Ben, je ne vois pas pourquoi tu ne pourrais pas avoir d'interface graphique avec ruby... C'est quoi le RGSS player ? C'est un affichage mode texte peut-être ?
Bah, le jour ou t'as 1000 trucs soulignés que tu veux changer et mettre en gras à la place tu seras heureux de n'avoir qu'un truc a changer dans le CSS plutot que de remplacer tous tes u... | |
| | | chaipokoi
Messages : 438
| Sujet: Re: [Script RMVX] Fenêtre additionnelle Jeu 29 Déc - 20:18 | |
| - Citation :
- Bah, le jour ou t'as 1000 trucs soulignés que tu veux changer et mettre en gras à la place tu seras heureux de n'avoir qu'un truc a changer dans le CSS plutot que de remplacer tous tes u...
Mais dans le cas présent naqqah ne voulait souligner qu'une seule phrase je lui donne un exemple pour une seule phrase . - Citation :
- Ben, je ne vois pas pourquoi tu ne pourrais pas avoir d'interface graphique avec ruby...
C'est quoi le RGSS player ? C'est un affichage mode texte peut-être ? Je n'ai jamais dit que l'on ne pouvait PAS avoir d'interface graphique avec ruby , j'ai dit que ruby ne le gère pas NATIVEMENT.Et puisque RGSS ne propose pas de fonction pour souligner le texte , j'en viens à ruby qui lui NE PEUX PAS LE GÉRER puisque de toute manière il ne prévoit pas de fonctions graphique . A l'avenir avant de commencer à chipoter, essaie de comprendre ce que je dis , je reconnais je ne suis pas toujours clair mais quand même ^^ | |
| | | Zangther
Messages : 444
| Sujet: Re: [Script RMVX] Fenêtre additionnelle Jeu 29 Déc - 20:32 | |
| Non mais... Un soulignement c'est pas preuve que c'est une interface graphique. Alors merci de comprendre ce que tu dis avant de dire de la merde ^^.
Après, tu réfléchis un peu et tu te demande comment Berka a pu faire son script de balises BBcode. Tu penses qu'il a tracé des rectangles à chaque fois ?
C'est triste de voir que tu réagis mal, tu n'es pas très bon mais si tu refuses les conseils tu le restera. Accepte les conseils et les critiques et tu deviendra meilleur. L'OO c'est pas du TI-Basic... | |
| | | Kaila
Messages : 4254
| Sujet: Re: [Script RMVX] Fenêtre additionnelle Jeu 29 Déc - 23:59 | |
| Owow, ne vous agitez pas trop sur du HS... | |
| | | chaipokoi
Messages : 438
| Sujet: Re: [Script RMVX] Fenêtre additionnelle Ven 30 Déc - 9:26 | |
| zanghter > Je ne réagis pas mal , j'en ai juste marre que tu chipote pour des idioties pareil , je sais bien que le RGSS est une interface graphique -_-' puisqu'il permet d'afficher des images. Quand à me dire que je ne suis pas bon , je le reconnais je me complique parfois la vie mais ça ne t'autorise pas à me prendre de haut comme tu le fais , arrête de croire que tu as la science infuse et écoute un peu les autres , LE RGSS ne possède pas de fonction pour souligner et le ruby ne supporte pas nativement les interfaces graphiques d'où le passage par des bibliothèques graphique comme le RGSS ou Gnome .Le pire c'est que l'on est d'accord sur le fait que le RGSS propose une interface graphique mais tu est tellement sur de ton fait et tellement sur que j'ai tort que ne prends pas le temps de lire mes post... J'ai appris la programmation en séquentiel et je réfléchis en séquentiel, au contraire je ne demande qu'à apprendre la programmation objet mais sur des choses constructives au lieu de se prendre la tête pour des conneries pareils. D'ailleurs tu me reproche de ne pas écouter les conseils , alors retourne dans le topic de mon script et lis le dès le début, j'avais fait pas mal d'erreurs , ayant repris le ruby depuis peu , et si tu regarde bien j'ai appliqué les conseils de Kaila , qui eux étaient utiles et constructifs. En revanche le script BBCode de Berka m’intéresse pourrait tu poster le lien s'il te plait ? bien que je pense que pour sa fonction - Code:
-
[u] il a du récupérer la position du texte ainsi que sa longueur et placer un fin rectangle en dessous, ce que j'ai essayé de faire mais sans succès, d'ailleurs je finis mon jeu et je me penche sur ce script de quête tant critiqué . Et comme le dis Kaila il vaut mieux arrêter là , on est sur rpg maker détente quand même. | |
| | | Zangther
Messages : 444
| Sujet: Re: [Script RMVX] Fenêtre additionnelle Ven 30 Déc - 10:16 | |
| Je te ne prends pas de haut mais quand je lis des ignominies telles que "l'indentation ça sert à rien" ou alors "HTML c'est mieux que ruby parce que y'a une interface graphique qui permet le soulignement" ou encore "On va changer ton Window_Base", voila quoi c'est n'importe quoi.
Programmer, c'est à double tranchant. Il faut que son programme marche mais qu'il soit aussi clair et fluide pour que l'on puisse s'y retrouver quand l'on souhaite.
Exemple : Le script de Berka ( http://rpg-maker-vx.bbactif.com/t2667-bbcode-dans-vos-messages )
C'est fonctionnel, oui, mais c'est pas commenté. Donc pour comprendre ce qu'il a fait faut réfléchir et déchiffrer. | |
| | | chaipokoi
Messages : 438
| Sujet: Re: [Script RMVX] Fenêtre additionnelle Ven 30 Déc - 10:38 | |
| Bah ça prouve bien ce que j'ai dit , tu ne lis pas mes messages, je vais donc te les replacer ici: - Citation :
- S4suk3 > je sais pour la création de quête mais je réponds à une demande , je respecte des contraintes , si j'avais créer ce script de mon propre chef je n'aurais pas procédé de la même manière. Quand à l'indentation , je trouve que ça fait brouillon.
EDIT : Vu la quantité de critique , je vais tout reprendre à 0 et utiliser une configuration de quête par fichiers texte à moins que quelqu'un ne me propose une autre méthode qui permet de configurer toutes les données de la quête le plus simplement et proprement possible.
Merci à Kaila pour sa méthode mais elle ne me plait pas j'aime bien quand tout est bien classé ^^ Je n'ai jamais dit que l'indentation ne sert à rien , je n'aime pas ça c'est mon droit , j'aime bien quand tout est clean et délimité. - Citation :
- Non le Rgss reste du ruby, de base, il n'est pas fait pour créer d'interfaces graphiques contrairement à html
Grâce à la balise : Code:
Je suis obligé de dessiner un rectangle en guise de trait de soulignement :/ après je peux gérer la taille de rectangle etc... mais je vais faire ce que je peux ^^ J'ai juste dit que dans ruby il n'y avais pas de balise 'u' , je suis un inconditionnel de ruby. Quand au Window_Base , j'ai crut qu'il l'avait modifié car le bug provenait de super qui appelle la fonction de la classe supérieur c'est à dire dans le cas présent la fonction initialize de Window_Base, si cette fonction avait été modifié , la fonction super aurait pu ne pas fonctionner.Ce qui aurait été résolus par un remplacement du script Window_Base . merci pour le script de berka je vais aller regarder ^^ EDIT: Pour le moment je ne vois qu'un seul fill_rect mais c'est pour le surlignage . RE-EDIT: Pour souligner Berka récupère la position du texte, et écrit "____" en dessous.Ce qui revient à mon rectangle en fait m'enfin sa méthode et quand même plus pratique. - Code:
-
if @soul contents.draw_text(@contents_x,@contents_y-self.contents.font.size/3,c_width,self.contents.font.size,"___") | |
| | | Zangther
Messages : 444
| Sujet: Re: [Script RMVX] Fenêtre additionnelle Ven 30 Déc - 10:54 | |
| - chaipokoi a écrit:
- Quand à l'indentation , je trouve que ça fait brouillon
Tu te rends pas compte de l'énormité de la connerie que tu as sorti ? C'est cause de réflexions comme ça que certains codes sont illisibles et que l'on ne peut pas les modifier. | |
| | | chaipokoi
Messages : 438
| Sujet: Re: [Script RMVX] Fenêtre additionnelle Ven 30 Déc - 10:57 | |
| Je sais que c'est une défaut d'ailleurs ça a fait rire Nuki x) Mais j'ai le droit non ? ^^ Et le code de berka est indenté tu le trouve plus lisible que le mien ? | |
| | | Zangther
Messages : 444
| Sujet: Re: [Script RMVX] Fenêtre additionnelle Ven 30 Déc - 11:17 | |
| Tu as le droit oui, mais c'est stupide.
Berka est un bon programmeur, mais son gros défaut c'est de produire du code très peu lisible, et encore sur le script que tu as vu c'est plutôt clair.
Après, faut que tu réfléchisse à un truc. Aimerais-tu, quand tu sauras mieux programmer, passer derrière un mec qu'a codé comme un porc ? Aimerais-tu obtenir de l'aide de la part de VRAIS programmeurs ?
Si tu veux être relu, faut que tu respecte des conventions. C'est pas obligatoire mais vu que la quasi-totalité des gens fond comme ça, ça permet de relire facilement du code.
L'indentation, c'est pas inutile. Tu indente à chaque fois que tu entres dans un bloc. Ce qui veut dire que grâce à l'indentation tu sais exactement ou tu te trouve. Tu sais quelles variables sont à ta porté, tu sais quels éléments sont concernés. C'est comme les constantes en majuscules ou alors l'initiale en majuscule dans le nom des classes.
Si tu veux jouer ton rebelle et faire autrement, tant pis. Peu de monde voudra relire ton code et ainsi tu ne progresseras pas. C'est bien dommage. | |
| | | Kitu
Messages : 6723
| Sujet: Re: [Script RMVX] Fenêtre additionnelle Ven 30 Déc - 11:24 | |
| - Kaila a écrit:
- Owow, ne vous agitez pas trop sur du HS...
| |
| | | Zangther
Messages : 444
| Sujet: Re: [Script RMVX] Fenêtre additionnelle Ven 30 Déc - 11:34 | |
| Ce n'est pas du HS Kitu, c'est une reflexion sur le script. | |
| | | Kitu
Messages : 6723
| Sujet: Re: [Script RMVX] Fenêtre additionnelle Ven 30 Déc - 12:08 | |
| - Citation :
- Donc si quelqu'un pourrait me faire un script qui affiche une fenêtre détaillant le nom de la quête lors de la sélection d'un objet, le PNJ qui demande de l'aide, son nom, les objectifs et les récompenses et, éventuellement, les indices si il y en a, ce serait plutôt cool.
Après une page de réflexion sur le script, je peux t'assurer que vous ne répondez pas à sa question ; c'est du HS. Vous pouvez continuer, hein, j'ai absolument rien contre un débat sain tant que ça tourne pas au grand n'importe quoi ; simplement, je citais Kaila pour vous prévenir que vous n'étiez plus tout à fait dans le sujet. | |
| | | Kaila
Messages : 4254
| Sujet: Re: [Script RMVX] Fenêtre additionnelle Ven 30 Déc - 12:10 | |
| Ben... Le script a déjà été fait par chaipokoi. Là on réfléchit dessus °° chaipokoi > Tiens, un vieil extrait d'un de mes vieux scripts: - Code:
-
def update_phase4_step4 for target in @target_battlers target.animation_id = @animation2_id target.animation_hit = (target.damage != "Manqué!") if target.damage.is_a?(Numeric) if SHAKE_ANIM.include?(target.animation_id) if target.damage >= 0 if(target.is_a?(Game_Actor) and SHAKE_HEROS_DAMAGE) or (target.is_a?(Game_Enemy) and SHAKE_ENEMY_DAMAGE) $game_screen.shake_anim(target.animation_id) end else if(target.is_a?(Game_Actor) and SHAKE_HEROS_HEAL) or (target.is_a?(Game_Enemy) and SHAKE_ENEMY_HEAL) $game_screen.shake_anim(target.animation_id) end end end elsif target.damage.is_a?(String) if(target.is_a?(Game_Actor) and SHAKE_HEROS_EVADE) or (target.is_a?(Game_Enemy) and SHAKE_ENEMY_EVADE) $game_screen.shake_anim(0) if SHAKE_ANIM.include?(0) end end end @phase4_step = 5 @wait_count = 8 end Le même sans indentation: - Code:
-
def update_phase4_step4 for target in @target_battlers target.animation_id = @animation2_id target.animation_hit = (target.damage != "Manqué!")
if target.damage.is_a?(Numeric) if SHAKE_ANIM.include?(target.animation_id) if target.damage >= 0 if(target.is_a?(Game_Actor) and SHAKE_HEROS_DAMAGE) or (target.is_a?(Game_Enemy) and SHAKE_ENEMY_DAMAGE) $game_screen.shake_anim(target.animation_id) end else if(target.is_a?(Game_Actor) and SHAKE_HEROS_HEAL) or (target.is_a?(Game_Enemy) and SHAKE_ENEMY_HEAL) $game_screen.shake_anim(target.animation_id) end end end elsif target.damage.is_a?(String) if(target.is_a?(Game_Actor) and SHAKE_HEROS_EVADE) or (target.is_a?(Game_Enemy) and SHAKE_ENEMY_EVADE) $game_screen.shake_anim(0) if SHAKE_ANIM.include?(0) end end end @phase4_step = 5 @wait_count = 8 end
Je trouve ça incompréhensible, faut compter les "if", les "else" et les "end" pour savoir où on en est dans le code Enfin, c'est toi qui vois, hein, mais personnellement je suis aussi déconcerté que Zang', là... | |
| | | chaipokoi
Messages : 438
| Sujet: Re: [Script RMVX] Fenêtre additionnelle Ven 30 Déc - 12:21 | |
| Quand je code quelque chose je laisse l'indentation je reconnais sont coté pratique - Spoiler:
- Code:
-
class Mur<Sprite #--création et affichage du mur------------------------------------------------- #|cette fonction fait apparaitre un mur aléatoirement dans une position | #|verticale ou horizontale.(possibilité de le définir manuellement) | #------------------------------------------------------------------------------- def initialize(player,pos=0,x=-1,y=-1) super() if pos==0 pos=rand*2+1 pos=pos.round if pos>2 pos=2 end end if pos==1 self.bitmap=RPG::Cache.picture("murH") end if pos==2 self.bitmap=RPG::Cache.picture("murV") end self.z=0 if x==-1 and y==-1 setPos(player) end @push=0 @duration=0 @durationLimite=rand*199+1 @durationLimite=@durationLimite.round end #-------------------------------------------------------------------------------
#--positionnement du mur-------------------------------------------------------- #|cette fonction gère le positionnement àléatoire du mur | #------------------------------------------------------------------------------- def setPos(player) x=5 random=rand*128 random=random.round x=x*random self.x=x y=5 random=rand*96 random=random.round y=y*random self.y=y checkPos(player) end #-------------------------------------------------------------------------------
#--gestion des collisions avec le joeur----------------------------------------- #|cette fonction gère les collisions avec le joueur | #------------------------------------------------------------------------------- def onCol?(id,player) self.update bonus=Array.new dir=Input.dir4 $dirLock[id]=0 if player.x+2 < self.x + self.bitmap.width and player.x+player.bitmap.width+2 > self.x and player.y < self.y + self.bitmap.height and player.y+player.bitmap.height > self.y and dir==6 if self.x+self.bitmap.width>640 $dirLock[id]=16 end if self.x+self.bitmap.width<640 $dirLock[id]=6 end for i in 0..$playerPower/25 Graphics.update col=onColPush?(objet) if self.x+self.bitmap.width<640 and $playerVitality-=1 self.x=self.x+25 end end if bonus[0]==1 self.flash(Color.new(255, 255, 255, 255),100) end end #les "+5" de la ligne ci-dessous permettent la correction d'un bug de collision d'orogine inconnue if player.x < self.x+(self.bitmap.width+5) and player.x+player.bitmap.width > self.x and player.y < self.y+(self.bitmap.height+5) and player.y+player.bitmap.height > self.y and dir==4 if self.x<0 $dirLock[id]=14 end if self.x>0 $dirLock[id]=4 end for i in 0..$playerPower/25 Graphics.update if self.x>0 $playerVitality-=1 self.x=self.x-25 end end if bonus[0]==1 self.flash(Color.new(255, 255, 255, 255),100) end end #les "+5" de la ligne ci-dessous permettent la correction d'un bug de collision d'orogine inconnue if player.x< self.x + self.bitmap.width and player.x+player.bitmap.width> self.x and player.y < self.y + (self.bitmap.height+5) and player.y+player.bitmap.height > self.y+5 and dir==8 if self.y>0 $dirLock[id]=8 end if self.y<=0 $dirLock[id]=18 end for i in 0..$playerPower/25 if self.y>0 $playerVitality-=1 Graphics.update self.y=self.y-25 end end if bonus[0]==1 self.flash(Color.new(255, 255, 255, 255),100) end end #les "-5" de la ligne ci-dessous permettent la correction d'un bug de collision d'orogine inconnue if player.x < self.x+(self.bitmap.width) and player.x+player.bitmap.width > self.x and player.y < self.y+(self.bitmap.height-5) and player.y+player.bitmap.height > self.y-5 and dir==2 if self.y+self.bitmap.height>480 $dirLock[id]=12 end if self.y+self.bitmap.height<480 $dirLock[id]=2 end for i in 0..$playerPower/25 Graphics.update if self.y+self.bitmap.height<480 $playerVitality-=1 self.y=self.y+25 end end if bonus[0]==1 self.flash(Color.new(255, 255, 255, 255),100) end end
end #-------------------------------------------------------------------------------
#--positionnement du mur (2)---------------------------------------------------- #|cette fonction vérifie la position du mur | #------------------------------------------------------------------------------- def checkPos(objet) if objet.x < self.x + self.bitmap.width and objet.x+objet.bitmap.width > self.x and objet.y < self.y + self.bitmap.height and objet.y+objet.bitmap.height > self.y setPos(objet) end end #-------------------------------------------------------------------------------
def onColPush?(objet) if objet.x < self.x + self.bitmap.width and objet.x+objet.bitmap.width > self.x and objet.y < self.y + self.bitmap.height and objet.y+objet.bitmap.height > self.y return 1 end end
end
Mais lorsque je le distribue à quelqu'un qui n'est pas sensé le modifier , je l’enlève, ça fait un travail plus propre j'aime quand tout est clean .Si Naqqah devait le modifier (ce qu'il a fait finalement) j'aurais agit autrement.Mais j'aime rendre un travail clean. | |
| | | Naqqah
Messages : 218
| Sujet: Re: [Script RMVX] Fenêtre additionnelle Ven 30 Déc - 12:36 | |
| Je précise juste, chapokoi, que je n'ai pas eu besoin de changer le Window_Base pour faire marcher le script, je l'avais dit un peu avant. | |
| | | S4suk3
Messages : 87
| Sujet: Re: [Script RMVX] Fenêtre additionnelle Ven 30 Déc - 12:39 | |
| - chaipokoi a écrit:
- Mais lorsque je le distribue à quelqu'un qui n'est pas sensé le modifier , je l’enlève, ça fait un travail plus propre j'aime quand tout est clean .Si Naqqah devait le modifier (ce qu'il a fait finalement) j'aurais agit autrement.Mais j'aime rendre un travail clean.
oui d'ailleurs la prochaine fois que je rendrai un script je réfractorerai toutes les variables et je compresserai mon code en une seule ligne... parce que j'aime rendre du code clean... | |
| | | chaipokoi
Messages : 438
| Sujet: Re: [Script RMVX] Fenêtre additionnelle Ven 30 Déc - 12:42 | |
| naqqah> je sais ,je parlais du script en lui-même tu as du supprimer la rectangle rouge ^^
| |
| | | Contenu sponsorisé
| Sujet: Re: [Script RMVX] Fenêtre additionnelle | |
| |
| | | | [Script RMVX] Fenêtre additionnelle | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |