[ZS Engine]Compagnons de Link + effet météorologique

Démarré par MetalZelda, 28 Avril 2013 à 12:13

0 Membres et 1 Invité sur ce sujet

Bonjour bonjour ! :)

Je pense que tout est dans le titre, c'est-à-dire si il y'a possibilité d'implanter des compagnons pour Link (Navi, Epona) dans le moteur Zelda Solarus ?

Puis, j'aimerais établir un système de pluie, j'ai vu dans les ressources de la trilo Zelda ROTH que la pluie est généré par 3 images, donc j'aimerais savoir si c'est possible  :mrgreen:

Merci :)

Je suppose que pour l'effet de pluie il suffira de faire comme pour le topic sur la nuit : tu rajoutes une image (après je sais pas si on peut la faire répéter sur toute la map, à première vue je dirai que non mais je connais pas du tout le moteur donc je dis peut-être une connerie aussi grosse que moi, et c'est pas peu dire ! :p ), et ensuite tu la fais répéter...

Pour Navi ou Epona par contre je peux pas te renseigner, ceci dit pour Epona techniquement ce serait juste du remplacement du sprite de Link pour le mettre sur un sprite Link+Epona (éventuellement découpé pour avoir la bonne tenue affichée, tout ça), mais dans tous les cas Epona serait pas un NPC collé aux basques de Link constamment, donc ça doit être facile à mettre en oeuvre. Après pour Navi, étant donné que c'est par contre un NPC qui se pointe un peu quand il veut là je pourrais pas te dire ^^

Bref, une réponse bien inutile. *va se flageller*


Bonne réponse Renkineko ^^
Pour l'effet de pluie, ce sont des images à afficher après l'affichage de la map, donc dans map:on_draw() comme expliqué dans le mini tuto sur l'effet de nuit.

Ensuite, concernant Epona, je n'aurais pas mieux répondu. Il faut changer le sprite de Link, ce qui n'est pas encore facilement possible.
Pour Navi c'est plus simple vu que le héros continue à se déplacer normalement. Il suffit d'en faire un PNJ ou bien un ennemi.
Chaîne Twitch : diffusion en direct de sessions de développement de Solarus, de création de jeux, de parties de jeux vidéo.
Chaîne YouTube : replays des diffusions en direct, tutos Solarus
Compte Twitter : pour être au courant des nouveautés
Chat Discord : pour discuter en direct avec la communauté Solarus

28 Avril 2013 à 19:56 #3 Dernière édition: 28 Avril 2013 à 20:03 par MetalZelda
Citation de: Christopho le 28 Avril 2013 à 16:42
Bonne réponse Renkineko ^^
Pour l'effet de pluie, ce sont des images à afficher après l'affichage de la map, donc dans map:on_draw() comme expliqué dans le mini tuto sur l'effet de nuit.

Ensuite, concernant Epona, je n'aurais pas mieux répondu. Il faut changer le sprite de Link, ce qui n'est pas encore facilement possible.
Pour Navi c'est plus simple vu que le héros continue à se déplacer normalement. Il suffit d'en faire un PNJ ou bien un ennemi.

C'est pas possible d'en faire un LUA le systeme jour nuit (que j'essaye d'experimenter) via un switch qui s'active a une heure aléatoire ? Mais cela impliquera la gestion des maisons et tout :p (Je sais deja comment m'organiser tien :D)

Pour Navi, un NPC qui suit Link sur toutes les maps tu veux dire ? Et pour Epona, y'aura-t-il un tuto sur l'API pour savoir coment changer l'apparence du héro et y ajouter des fonctions (et interdire l'utilisation de certains objets ^^) ?

Oh en parlant de ça, il faudrait que tu me dises comment faire pour faire fonctionner un nouveau script LUA dans le moteur ^^ (Comme le système jour/nuit avancé) dés l'execution de Solarus (Je metterais le script fini sur GitHub, pour l'instant c'est aux heure de test.)
Par exemple pendant une cinématique, j'ai commencé à définir comment arreter le temps et le remettre en route (sol.zeldatime_start/stop), me manque plus qu'a faire un time set, les tons d'ecran et les transitions entre chaques tons ^^ (un sol.zeldatime_set(minute, heure) devrait le faire ^^

Citation de: MetalZelda le 28 Avril 2013 à 19:56
C'est pas possible d'en faire un LUA le systeme jour nuit (que j'essaye d'experimenter) via un switch qui s'active a une heure aléatoire ? Mais cela impliquera la gestion des maisons et tout :p (Je sais deja comment m'organiser tien :D)
Les bibliothèques Lua de base fournissent tout ce qu'il faut pour obtenir la date et l'heure et générer des nombre aléatoires : http://www.lua.org/manual/5.1/ donc pas de souci.

Citation de: MetalZelda le 28 Avril 2013 à 19:56
Pour Navi, un NPC qui suit Link sur toutes les maps tu veux dire ?
Oui. Un NPC au high layer comme ça on est sûr qu'il n'y aura jamais de collision possible ^^

Citation de: MetalZelda le 28 Avril 2013 à 19:56Et pour Epona, y'aura-t-il un tuto sur l'API pour savoir coment changer l'apparence du héro et y ajouter des fonctions (et interdire l'utilisation de certains objets ^^) ?
Tout ceci n'est pas encore vraiment possible. On peut faire hero:freeze() mais pas grand chose de plus précis. Mais c'est prévu. Changer ses sprites, on pourra très bientôt.
Tu peux en tout cas interdire l'utilisation d'un objet, tu n'as qu'à modifier le script de l'objet pour ne rien faire si le héros est sur Epona. Tu peux aussi redéfinir tout ce qui se passe quand on appuie sur n'importe quelle touche. Regarde la doc de game:on_command_pressed() par exemple.

Citation de: MetalZelda le 28 Avril 2013 à 19:56
Oh en parlant de ça, il faudrait que tu me dises comment faire pour faire fonctionner un nouveau script LUA dans le moteur ^^ (Comme le système jour/nuit avancé) dés l'execution de Solarus (Je metterais le script fini sur GitHub, pour l'instant c'est aux heure de test.)
Par exemple pendant une cinématique, j'ai commencé à définir comment arreter le temps et le remettre en route (sol.zeldatime_start/stop), me manque plus qu'a faire un time set, les tons d'ecran et les transitions entre chaques tons ^^ (un sol.zeldatime_set(minute, heure) devrait le faire ^^
Tu as le script principal main.lua qui est exécuté au lancement de Solarus. Tu peux donc faire les choses là, ou alors au lancement de la partie. La différence étant qu'au lancement de Solarus, tu as les menus (écran-titre, écran de sauvegardes...) avant de démarrer la partie.
Chaîne Twitch : diffusion en direct de sessions de développement de Solarus, de création de jeux, de parties de jeux vidéo.
Chaîne YouTube : replays des diffusions en direct, tutos Solarus
Compte Twitter : pour être au courant des nouveautés
Chat Discord : pour discuter en direct avec la communauté Solarus