Pagina de start a forumului amxx.MyForum.ro amxx.MyForum.ro
Fa-ti si tu propriul forum, pe www.myforum.ro!
 
 FAQFAQ   CautareCautare   MembriMembri   GrupuriGrupuri   InregistrareInregistrare 
 ProfilProfil   Mesaje privateMesaje private   AutentificareAutentificare 

CountDown

 
Creaza un subiect nou   Raspunde la subiect    Pagina de start a forumului amxx.MyForum.ro -> Tutoriale Amxx
Subiectul anterior :: Subiectul urmator  
Autor Mesaj
anakin_cstrike
Administrator
Administrator


Data inscrierii: 26/Mai/2008
Mesaje: 7

MesajTrimis: 26/05/2008 18:33    Titlul subiectului: CountDown Raspunde cu citat (quote)

Vreti sa stiti cum se face un countdown pentru bomba ? Ei bine,in acest tutorial va voi arata cum.
Pentru inceput aveti nevoie de modulul csx pentru event-ul de la bomba :

Cod:
#include <amxmodx>
#include <csx>

#define PLUGIN "New Plugin"
#define VERSION "1.0"
#define AUTHOR "Author"


public plugin_init() {
   register_plugin(PLUGIN, VERSION, AUTHOR)
   
}


Acum vom creea 2 variabile : una pentru determinarea count-ului si alta pentru afisare :
Cod:
new g_C4Timer,g_MsgSync

Eu am dat un exemplu,voi faceti cum doriti.
Apoi in plugin_init,dam variabilei pentru afisare ( g_MsgSync ) o functie de sincronizare :
Cod:
g_MsgSync = CreateHudSyncObj();

Pentru mai multe detailii : [url=http://www.amxmodx.org/funcwiki.php?go=func&id=1064]Click![/url]

In continuare,vom avea trebuință de un task in forward-ul de csx :
Cod:
set_task(1.0, "CountDown", 8038, "", 0, "b")


Apoi in public creat in task,verificam daca timp-ul este mai mare de 0 :

Cod:
public CountDown(){
   if(g_C4Timer > 0)


Apoi,daca vreti sa faceti un hud colorat in functie de timp-ul ramas pana la explozie.Eu voi da exemplul urmator : sub 35 secunde culoarea este verde,sub 20 este galbena iar sub 10 este rosie :

Cod:
if(g_C4Timer < 35){
   set_hudmessage(0,255,0,-1.0,0.10,0,6.0,12.0)
} else if(g_C4Timer < 20){
         set_hudmessage(255,255,0,-1.0,0.10,0,6.0,12.0)
} else if(g_C4Timer < 10){
         set_hudmessage(255,0,0,-1.0,0.10,0,6.0,12.0)
}


Acum depine de gustul fiecaruia,de exemplu vreti sa apara ceva de genu : =>30<=...=>25<=...=>5<=

Cod:
ShowSyncHudMsg(0,g_MsgSync,"=>%d<=",g_C4Timer)


    * %d - decimal
    * g_C4Timer - va inlocui %d cu cifra respectiva
    * g_MsgSync - variabila creata mai sus
    * 0 - va arata hud-ul tuturor jucatorilor
    * ShowSyncHudMsg - in loc de show_hudmessage


Si acum sfarsitul,functia de scadere a secundelor de la bomba :
Cod:
--g_C4Timer;


Daca ati facut ca si mai sus ar trebuie sa aveti ceva de genu :

Cod:
#include <amxmodx>
#include <csx>

#define PLUGIN "New Plugin"
#define VERSION "1.0"
#define AUTHOR "Anakin"

new g_C4Timer,g_MsgSync;

public plugin_init() {
   register_plugin(PLUGIN, VERSION, AUTHOR)
   
   g_MsgSync = CreateHudSyncObj();
}

public bomb_planted(id){
   set_task(1.0, "CountDown", 8038, "", 0, "b")
}

public CountDown(){
   
   if(g_C4Timer > 0){
     
      if(g_C4Timer < 35){
         set_hudmessage(0,255,0,-1.0,0.10,0,6.0,12.0)
      } else if(g_C4Timer < 20){
         set_hudmessage(255,255,0,-1.0,0.10,0,6.0,12.0)
      } else if(g_C4Timer < 10){
         set_hudmessage(255,0,0,-1.0,0.10,0,6.0,12.0)
      }
     
      ShowSyncHudMsg(0,g_MsgSync,"=>%d<=",g_C4Timer)
      --g_C4Timer;
   }
}
Sus
Vezi profilul utilizatorului Trimite mesaj privat
Afiseaza mesajele pentru a le previzualiza:   
Creaza un subiect nou   Raspunde la subiect    Pagina de start a forumului amxx.MyForum.ro -> Tutoriale Amxx Ora este GMT + 2 ore
Pagina 1 din 1

 
Mergi direct la:  
Nu puteti crea un subiect nou in acest forum
Nu puteti raspunde in subiectele acestui forum
Nu puteti modifica mesajele proprii din acest forum
Nu puteti sterge mesajele proprii din acest forum
Nu puteti vota in chestionarele din acest forum


Powered by phpBB © 2001, 2005 phpBB Group
Fa-ti si tu propriul forum GRATUIT, pe www.myforum.ro