Raised This Month: $32 Target: $400
 8% 

sleep();


  
 
 
Thread Tools Display Modes
Author Message
Kidev
Veteran Member
Join Date: Jun 2010
Location: France
Old 05-24-2011 , 14:57   sleep();
#1

Salut, j'aurais juste voulu savoir si il y avait la possibilité de "sleep" une fonction comme en Java (sans task en fait). Je voudrais juste mettre en pause ma fonction X s. Par exemple:
PHP Code:
public test()
{
    
client_print()
    
sleep(10);
    
client_print()

Voilà... Merci d'avance.
__________________
Kidev is offline
Arkshine
AMX Mod X Plugin Approver
Join Date: Oct 2005
Old 05-24-2011 , 17:10   Re: sleep();
#2

Pas possible. Pawn is mono-thread, donc chaque chose est executée à la queuleuleu et non en parallèle. Si tu arrêtes une fonction, tu bloques tout. Va falloir bidouiller avec des set_task.
__________________
Arkshine is offline
Kidev
Veteran Member
Join Date: Jun 2010
Location: France
Old 05-24-2011 , 17:37   Re: sleep();
#3

Ok :/ Le problème en fait c'est que les task font des trucs bizarres, et qu'on ne peut pas (sauf erreur de la part) envoyer un index dans la fonction que l'on task et ça fait des trucs bizarres.

Donc il va falloir que je fasse une recursion avec une variable sur 0 et 1 pour faire comme un sleep...

Merci de l'info Arkshine.
__________________
Kidev is offline
Arkshine
AMX Mod X Plugin Approver
Join Date: Oct 2005
Old 05-24-2011 , 18:01   Re: sleep();
#4

Ben si tu peux.
__________________
Arkshine is offline
Kidev
Veteran Member
Join Date: Jun 2010
Location: France
Old 05-24-2011 , 18:07   Re: sleep();
#5

Bah moi quand je fais une task je fait comme ça:
PHP Code:
set_task(5.0"NomDeLaFonction"taskid); 
Je peux faire
PHP Code:
set_task(5.0"NomDeLaFonction(id)"taskid); 
?
__________________
Kidev is offline
Arkshine
AMX Mod X Plugin Approver
Join Date: Oct 2005
Old 05-24-2011 , 18:09   Re: sleep();
#6

C'est juste pour passer l'id ? Si oui, tu peux très bien considérer que taskid c'est ton id.

Tu peux passer également un array dans set_task().
__________________
Arkshine is offline
Kidev
Veteran Member
Join Date: Jun 2010
Location: France
Old 05-24-2011 , 18:14   Re: sleep();
#7

Ha ok, je croyais que l'id du joueur et l'id de la task étaient deux choses bien distinctes.

Merci
__________________
Kidev is offline
Arkshine
AMX Mod X Plugin Approver
Join Date: Oct 2005
Old 05-24-2011 , 18:18   Re: sleep();
#8

Ben ça l'est. Le taskid est juste un id pour identifier la task si t'as besoin de faire des manipulations avec, comme supprimer ou modifier le temps.

Tu peux très bien passer l'id d'un joueur, c'est la même chose, vu que l'id sera différente pour chaque joueur. Après si tu travailles avec plusieurs task utilisant l'id d'un joueur, tu peux très bien ajouter un nombre bidon, exemple :

set_task( 1.0, "blabla", 666 + id );
set_task( 5.0, "blablaProuet", 999 + id );

public blabla( taskid )
{
new id = taskid - 666.
}

etc.
__________________
Arkshine is offline
Kidev
Veteran Member
Join Date: Jun 2010
Location: France
Old 05-24-2011 , 19:05   Re: sleep();
#9

Ok ok, merci beaucoup
__________________
Kidev is offline
 


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 05:29.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode