µLua DS - Forum officiel | Official forum Index du Forum

µLua DS - Forum officiel | Official forum
Le bon endroit pour en savoir plus sur MicroLua et pour parler de vos projets ! | The right place to learn more about MicroLua and talk about your projects !

 FAQFAQ   RechercherRechercher   MembresMembres   GroupesGroupes   S’enregistrerS’enregistrer   ProfilProfil   Se connecter pour vérifier ses messages privésSe connecter pour vérifier ses messages privés   ConnexionConnexion 

[LUA/Lib] CallBack

 
Poster un nouveau sujet   Répondre au sujet    µLua DS - Forum officiel | Official forum Index du Forum -> Section française -> Coin du dév' -> Librairies
Sujet précédent :: Sujet suivant  
Auteur Message
Roland_Yonaba


Hors ligne

Inscrit le: 02 Sep 2011
Messages: 22

MessagePosté le: Jeu 12 Avr 2012 - 14:02    Sujet du message: [LUA/Lib] CallBack Répondre en citant

CallBack ?


CallBack est une toute petite librairie LUA qui vous permet de contrôler l'exécution des fonctions que vous créez dans votre code source en fonction du temps.
Avec CallBack vous pouvez faire en sorte qu'une fonction que vous aurez conçue s'exécute après x secondes après un évènement spécifique. Vous pourrez faire en sorte que cette fonction soit périodiquement exécutée toutes les x secondes, et ce n fois, ou simplement n fois de façon continue!


CallBack peut être utilisée de mille et une manières...Pour la lecture de fichiers, la sauvegarde d'informations, la création d'animations, le déplacement d'objets, etc.


Nota:
Le paramètre crucial sur lequel repose CallBack est le temps. Cette librairie, pour des raisons évidentes, n'implémente pas de gestion d'horloge. Ce sera à vous de concevoir votre propre horloge, ou de faire appel aux fonctions de votre API afin d'accéder à l'horloge interne du système sur lequel fonctionne votre application
La mise à jour des CallBacks se fait par l'intermédiaire d'un "delta time", qui est le temps passé depuis l'exécution de la boucle précédente.


Exemple


 


 
Citation:
 local callback = require 'Lib.Callback'


-- Créons quelques fonctions
local function delta(a,b,c)
print('delta is : ',b^2-4*a*c)
end


local function blabla(...)
print('blabla : ',...)
end


local function empty()
print('empty : ', 'pfiouuu!')
end


-- Définissons nos callbacks
-- La fonction delta sera exécutée une seule fois, après 10 unités de temps, avec 4, 2 et 0 comme arguments
callback.onceAfter(10,delta,4,2,0)
--la fonction blabla sera exécutée successivement 5 fois après 13 unités de temps, avec 'je compte ',1,2,3,4,5 comme arguments
callback.manyAfter(13,5,blabla,'je compte ',1,2,3,4,5)
-- La fonction empty sera exécutée toutes les 5 unités de temps, 3 fois de suite, sans arguments.
callback.periodically(5,3,empty)


-- Implémentons un compteur de temps très simple
local timeCounter, deltaTime = 0,1


while (timeCounter<20) do
timeCounter = timeCounter + deltaTime -- mise à jour du compteur
print('Current Time is ',timeCounter) -- affichage du temps courant
callback.update(deltaTime) -- mise à jour des callbacks avec le delta Time
end


print( 'Finished!')
















Telecharger: CallBack


Revenir en haut
Publicité






MessagePosté le: Jeu 12 Avr 2012 - 14:02    Sujet du message: Publicité

PublicitéSupprimer les publicités ?
Revenir en haut
Reylak
Administrateur

Hors ligne

Inscrit le: 24 Nov 2008
Messages: 2 838
Localisation: Toulouse

MessagePosté le: Jeu 12 Avr 2012 - 15:51    Sujet du message: [LUA/Lib] CallBack Répondre en citant

Le fantôme du forum qui nous pond des librairies trop stylées pour améliorer Lua Wink

Je n'ai pas testé mais ça me semble particulièrement utile.
_________________


Plein d'infos sur le SourceForge !


Revenir en haut
Visiter le site web du posteur MSN Skype
Roland_Yonaba


Hors ligne

Inscrit le: 02 Sep 2011
Messages: 22

MessagePosté le: Jeu 12 Avr 2012 - 17:29    Sujet du message: [LUA/Lib] CallBack Répondre en citant

Fantôme, moi ...?
Twisted Evil


Revenir en haut
Reylak
Administrateur

Hors ligne

Inscrit le: 24 Nov 2008
Messages: 2 838
Localisation: Toulouse

MessagePosté le: Jeu 12 Avr 2012 - 17:46    Sujet du message: [LUA/Lib] CallBack Répondre en citant

11 messages depuis septembre 2011 :p (c'était pas méchant hein, y avait rien de mal à prendre ^^')
_________________


Plein d'infos sur le SourceForge !


Revenir en haut
Visiter le site web du posteur MSN Skype
Fantasix
Modérateur

Hors ligne

Inscrit le: 26 Avr 2010
Messages: 1 317
Localisation: SCREEN_UP, en -1, -1

MessagePosté le: Jeu 12 Avr 2012 - 18:56    Sujet du message: [LUA/Lib] CallBack Répondre en citant

Pas mal pas mal, maintenant faut lui trouver une utilité !

Han, y'a pire comme fantôme hein :p

Fanta'
_________________


BMA News :

Création du Homebrew Storage en cours ...


Revenir en haut
Visiter le site web du posteur
Roland_Yonaba


Hors ligne

Inscrit le: 02 Sep 2011
Messages: 22

MessagePosté le: Jeu 12 Avr 2012 - 18:58    Sujet du message: [LUA/Lib] CallBack Répondre en citant

Comme quoi, le sage économise ses mots...  Laughing

Revenir en haut
Lolman
Modérateur

Hors ligne

Inscrit le: 02 Aoû 2011
Messages: 811

MessagePosté le: Sam 14 Avr 2012 - 21:37    Sujet du message: [LUA/Lib] CallBack Répondre en citant

C'est très bien pensé ! As-tu proposé cette lib à Lua ? Elle pourrait faire partie intégrante de la librairie standard, étant donné qu'elle est à un niveau d'abstraction élevée.
_________________
http://bit.ly/u5x6DZ Fangame et suite du célèbre Metroid Prime 3.
Corvées : header fofo, Homebreware, µPy, new µLib, modes d'emploi, MLS sur DeSmuME, rotation écran, tuto wiki, domination de la Galak-sy.


Revenir en haut
Visiter le site web du posteur
Contenu Sponsorisé






MessagePosté le: Aujourd’hui à 10:26    Sujet du message: [LUA/Lib] CallBack

Revenir en haut
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    µLua DS - Forum officiel | Official forum Index du Forum -> Section française -> Coin du dév' -> Librairies Toutes les heures sont au format GMT + 1 Heure
Page 1 sur 1

 
Sauter vers:  

Index | Creer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Powered by phpBB © 2001, 2005 phpBB Group
Traduction par : phpBB-fr.com