Bienvenue visiteur !
|
Statistiques
Liste des membres
Contact
Mentions légales
523 connectés actuellement
30732452 visiteurs depuis l'ouverture
2431 visiteurs aujourd'hui
Partenaires
Tous nos partenaires
Devenir partenaire
|
Messages postés par Gari Nombre de messages référencés sur Oniromancie (non supprimés): 5915 Aller à la page: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148
Posté dans Scripts - Affichage partiel des images |
Gari -
posté le 14/05/2020 à 13:52:55. (5901 messages postés) - |
| C'est chouette ça pour avoir des facesets sur XP ! Je suis sûr que ça peut avoir pleins d'autres utilités (dont animations, comme tu le mentionnes).
|
Posté dans Forum - [Scripts] Petites questions connes sur les SCRIPTS!! |
Gari -
posté le 14/05/2020 à 13:46:35. (5901 messages postés) - |
| Oui, c'est l'idée (enfin c'est ce que je pense être voulu par le tuto à la base) !
Est-ce que ces deux lignes permettraient le déplacement du centre de rotation sur la carte ?
Citation: self.x = x.round + x_centre
self.y = y.round + y_centre |
Les positions x et y ont l'air d'être calculées selon la position de ce fameux centre.
Vu que le titre du tuto mentionne le centre mobile, ce serait juste bien de rajouter ça si ça a effectivement été montré (sinon juste le script comme tu l'as fait ce sera déjà très super bien, je suppose qu'il s'agissait surtout d'expliquer le principe de la rotation à la base).
J'ai quand même vérifié qu'aucun script identique similaire n'existait pour XP (serait peut-être temps Gari ), et à priori non. Il y a quand même ce script de Fabien qui donne des méthodes pour déplacer des images, mais je ne pense pas que ce soit exactement la même chose.
Ce serait vraiment super si tu voulais bien refaire le tuto dans ce sens en tout cas (avec les explications)
xvw : J'aimerais tellement masquer (supprimer n'est pas une option), mais ma direction (les grands pontes tout là-haut) m'incite à une extrême prudence, surtout que je peux avoir la main un peu lourde quand je nettoie.
|
Posté dans Forum - [Scripts] Petites questions connes sur les SCRIPTS!! |
Gari -
posté le 14/05/2020 à 12:23:46. (5901 messages postés) - |
| Non, je nettoie fais le ménage.
Désolé de t'avoir plébiscité pour pas grand-chose (dans la mesure où je ne ferai rien de ce mini script, n'étant pas... maker/programmeur). Mais merci quand même !
A défaut de pouvoir rajouter des choses, je pense que je dois pouvoir expliquer ce que tu as fait (à l'aide d'un cours de maths cve serait mieux, mais faudra se contenter de la version CE2). L'objectif du script posté sur Oniro était peut-être juste d'expliquer comment scripter une rotation sur XP (ce qui peut être intéressant pour créer des animations sans image, avec des collisions précises au pixel prêt, ou d'autresz trucs dont vous avez plus l'idée que moi).
Spoiler (cliquez pour afficher) Citation: spriteRotation = Sprite.new |
Commande pour dire qu'on crée un objet de type Sprite (défini par la suite), avec pour nom spriteRotation. Ce qui signifie que pour créer une nouvelle image du même type, il faudrait soit a) dupliquer le script en changeant le nom de Sprite.new (par spriteRotation2 ou autre), soit b) créer un euh... module (?) de type Sprite.new = spriteRotation.name("nomdel'image.png" ou codenomdesprite ; position_x ; position_y ; vitesse_rotation ; autres paramètres)
Citation: # Position initiale du sprite
spriteRotation.x = 320
spriteRotation.y = 240
spriteRotation.z = 0 |
x et y par rapport à l'écran. z normalement c'est la profondeur, RM étant 2D je suppose que ce ne serait utile qu'en alliant avec des systèmes utilisant cette méthode ? (peut-être le mode 7) Ou alors c'est autre chose.
Citation: spriteRotation.bitmap = Bitmap.new(100,150) |
on associe des dimensions à notre sprite, bitmap référant aux fonctions graphiques, et les éléments entre parenthèses à largeur et hauteur. Vulgairement, on a un rectangle de 100 de largeur par 150 de hauteur.
Citation: blue = Color.new(0,0,255,255) |
On crée une variable "blue" de type couleur (R, V, B, saturation).
Citation: # Création de quelques alias utiles
w = spriteRotation.bitmap.width.to_f # largeur du sprite
h = spriteRotation.bitmap.height.to_f # longueur du sprite
r = Math.sqrt(w*w + h*h) / 2 # dist entre coin haut gauche et centre du sprite
originX = spriteRotation.x # position initiale axe X
originY = spriteRotation.y # position initiale axe Y
originTheta = Math.atan((w/2.0)/(h/2.0)) # angle entre longueur et diagonal
Pi = 3.14159 |
Création de termes réutilisables pour ce script mais aussi ailleurs (l'alias n'étant implémenté qu'à partir de VXAce)
Citation: spriteRotation.bitmap.fill_rect(0, 0, w, h, blue) |
On remplit notre objet Sprite avec la variable blue définie plus haut, selon la largeur et la hauteur du sprites (pour les deux premiers 0, je vois pas ce que c'est).
Citation:
On définit l'angle à 0 avant qu'il soit assigné à notre sprite.
Le reste (inséré dans le loop) permet de faire tourner le sprite en fonction de l'angle sur son centre, et de retourner au menu de l'écran titre quand Echap/X est pressé.
|
Posté dans Forum - [Scripts] Petites questions connes sur les SCRIPTS!! |
Gari -
posté le 14/05/2020 à 11:00:25. (5901 messages postés) - |
| Ca fait un joli rectangle bleu sur fond noir.
Ca me dit pas trop comment le premier fonctionne (désolé, c'est pour mettre à jour le script du dessus, pas pour un usage personnel )
Je suppose que l'objectif pour rendre ton script utilisable, ce serait que je crée un Class_Rotation pour éviter que ça se lance automatiquement et le code qui permettrait de faire ça par appel de script...
|
Posté dans Forum - [DEAMAKER 3.8] Erreur de recompilation DMK vers LMU + affichage des accents |
Gari -
posté le 13/05/2020 à 19:19:18. (5901 messages postés) - |
| Domaine concerné: Patch
Logiciel utilisé: Drea Maker 3.8
Bonjour,
J'utilise toujours Drea Maker et j'ai voulu rajouter les accents aux versions françaises de The Way. Pour une raison que je ne m'explique pas encore, le premier épisode s'est très bien recompilé, les accents s'affichent normalement.
Pour le deuxième épisode cependant, les accents ont été transformés en symboles à l'étape 3 ou 4 (soit le passage du fichier texte au .dmk, soit de ce dernier au format .lmu).
Pour tenter de résoudre le problème (ou du moins de trouver sa source) :
- j'ai vérifié mes polices rm2000 (les deux sont bien accentuées) ;
- j'ai ouvert le jeu avec la version officielle de RM2000 et effectué la modification là où les symboles étaient visibles. Les accents s'affichent normalement.
- j'ai aussi converti le projet avec la version officielle, mais le problème persiste.
- j'ai décompilé le jeu compilé de Drea. Les accents s'affichent normalement dans le fichier texte.
- j'ai ouvert le RPG_RT.exe de la version d'origine et officielle. La version officielle a une mention des fonts, contrairement à l'ancien, et il s'agit à priori bien des deux fonts par défaut (RPG2000 et RPG2000G).
Dans la mesure où il s'agit de deux épisodes probablement réalisés sur la même version de RM2000, les probabilités que ce problème surviennent sont ténues. Je ne sais pas non plus exactement dans quelle mesure DreaMaker est impliqué dedans.
J'ai remarqué que la plupart des vieux jeux réalisés sur RM2000 n'ont pas d'accent, ce qui me fait craindre un chiffrage en ANSI (caractères anglophones seulement). Cependant, la transition vers la version officielle aurait vraisemblablement dû corriger ce problème ?
|
Posté dans Forum - [Scripts] Petites questions connes sur les SCRIPTS!! |
Gari -
posté le 13/05/2020 à 15:01:01. (5901 messages postés) - |
| Support : RMXP
Question rapide, ce tuto permet de faire une rotation de sprite autour d'un centre en déplacement, sans erreur d'affichage.
Ma question concerne plus l'endroit où coller cette/ces portion(s) de code :
Citation: Voilà le code (à mettre dans l'update du sprite) permettant de calculer les coordonnées "cartésiennes" suite à une rotation....
@old_angle correspond à l'angle d'origine de la rotation du sprite par rapport au centre.
@new_angle correspond au nouvel angle après la rotation. |
A placer dans Game_Sprite ? A mettre, dans un event en appel de script ?
Citation: rx = (self.x - x_centre)
ry = (self.y - y_centre)
diff = Math::PI * (@old_angle-@new_angle) / 180.0
r = Math.hypot(rx, ry)
@ang = Math.atan2(ry.to_f,rx.to_f)+diff
x = r * Math.cos(@ang)
y = r * Math.sin(@ang)
self.x = x.round + x_centre
self.y = y.round + y_centre
@old_angle = @new_angle |
A placer tout seul au-dessus de Main ? En appel de script ?
|
Posté dans Forum - Encore un nouveau |
Gari -
posté le 13/05/2020 à 11:24:24. (5901 messages postés) - |
| Ja, et pour les commandes événementielles (incluant les variables et les conditions), le fonctionnement est similaire d'un RM à l'autre.
|
Posté dans Forum - Encore un nouveau |
Gari -
posté le 13/05/2020 à 10:03:14. (5901 messages postés) - |
| Bienvenue !
Citation: ah oui et, je suis Belge |
Je crois qu'ils sont quelques uns à traîner par ici, tu risques de les croiser rapidement
|
Posté dans Forum - [RM 2003] Ground.0_reloaded : chapitres 1 à 3.1 (édition classique) |
Gari -
posté le 11/05/2020 à 12:27:40. (5901 messages postés) - |
| Citation: Et quand j'aurai rattrapé les épisodes de G0R déjà publiés, la suite ne paraîtra que sur MV mais il sera possible d'importer une partie commencée sur l'édition 2K3. |
De ce que tu dis et de ce qui a été dit dans les posts précédents, j'ai l'impression que tu vas refaire la version "reloaded" (qui est lui-même un remake de ground des années 2005-2007) sur MV.
En gros : Ground (2005-2007) = ground0.reloaded = ground0.mv remasterisé
| Aller à la page: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148
|
|
|