Szerző Téma: Score (Pont)  (Megtekintve 824 alkalommal)

Nem elérhető JackBronson

  • 1499
  • ??
    • Profil megtekintése
Score (Pont)
« Dátum: 2011. november 11. - 19:10:42 »
0 Show voters
Csõsztök melyik az a fügvény amivel ha pl a játékos elér 5 score-t (pontot) akkor valamit véghez visz pl: ad egy uj skint.t
Köszi a választ!

Nem elérhető Csabesz

  • 7827
    • Profil megtekintése
Score (Pont)
« Válasz #1 Dátum: 2011. november 11. - 19:12:49 »
+1 Show voters
Ez?
[pawn]if ( GetPlayerScore ( playerid ) == 5 ) return SetPlayerSkin ( playerid, 23 );[/pawn]
ez nem függvény, csak egy vizsgálat.  ;)

Nem elérhető JackBronson

  • 1499
  • ??
    • Profil megtekintése
Score (Pont)
« Válasz #2 Dátum: 2011. november 11. - 19:17:33 »
0 Show voters
Ja kössz!!!!!!!!!!!!!!!

Nem elérhető Pedró

  • 3341
  • 2014 © Az év Szkriptere
    • Profil megtekintése
Score (Pont)
« Válasz #3 Dátum: 2011. november 11. - 19:19:26 »
0 Show voters
Timerrel.
 

#include a_samp
forward ScoreTimer(playerid);
new y;
public OnPlayerConnect(playerid)
{
    SetTimerEx(\"ScoreTimer\", 2000, false, \"i\", playerid);
    return 1;
}
public ScoreTimer(playerid)
{
    if(GetPlayerScore(playerid) == 5)
    {
           SendClientMessage(playerid, 0x00FF00AA, \"5 pontod van!\");
   }
    return 1;
}

 
OFF: elõbb elkezdtem írni, de mindegy.

Nem elérhető Sheet

  • 1508
  • Támogató
    • Profil megtekintése
Score (Pont)
« Válasz #4 Dátum: 2011. november 11. - 19:20:53 »
0 Show voters
Idézetet írta: nagyon. date=1321035566\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"13280\" data-ipsquote-contentclass=\"forums_Topic
Timerrel.
 

#include a_samp
forward ScoreTimer(playerid);
new y;
public OnPlayerConnect(playerid)
{
    SetTimerEx(\"ScoreTimer\", 2000, false, \"i\", playerid);
    return 1;
}
public ScoreTimer(playerid)
{
    if(GetPlayerScore(playerid) == 5)
    {
           SendClientMessage(playerid, 0x00FF00AA, \"5 pontod van!\");
   }
    return 1;
}

 
OFF: elõbb elkezdtem írni, de mindegy.
 
és ha a két másodperc alatt, feltolja 6 score-ra? akkor nem ér semmit
Igazság vizsgálat kell, OnplayerUpdate alá

Nem elérhető Pedró

  • 3341
  • 2014 © Az év Szkriptere
    • Profil megtekintése
Score (Pont)
« Válasz #5 Dátum: 2011. november 11. - 19:23:15 »
0 Show voters
Jó igazad van. Akkor íme a megoldás ami jó:
#include a_samp
public OnPlayerUpdate(playerid)
{
    if(GetPlayerScore(playerid) == 5)
    {
           SendClientMessage(playerid, 0x00FF00AA, \"5 pontod van!\");
   }
    return 1;
}

Nem elérhető kurta999

  • 2759
  • Éllő fédisznó
    • Profil megtekintése
Score (Pont)
« Válasz #6 Dátum: 2011. november 11. - 19:29:37 »
+1 Show voters
Amíg 5 pontja van, addig fog a fenti kód lefutni.
Tehát akár egy milliárdszor is..
Ez mûködik!
[pawn]
new
Lefutott[MAX_PLAYERS char];
public OnPlayerConnect(playerid)
{
Lefutott{playerid} = false;
return 1;
}
public OnPlayerUpdate(playerid)
{
if(GetPlayerScore(playerid) == 5 && !Lefutott{playerid})
{
   SendClientMessage(playerid, 0x00FF00AA, \"5 pontod van!\");
   Lefutott{playerid} = true;
}
return 1;
}
[/pawn]
De bõven elég lenne egy másodperces timer is, mivel az OnPlayerUpdate kicsit laggolna. ( Mondjuk ilyen kis kódnál nem, de felesleges ilyennel terhelni a szervert )
« Utoljára szerkesztve: 2011. november 11. - 19:37:54 írta kurta999 »

Nem elérhető JackBronson

  • 1499
  • ??
    • Profil megtekintése
Score (Pont)
« Válasz #7 Dátum: 2011. november 12. - 15:43:36 »
0 Show voters
Kurtáé jó lett kössz :) ZÁROK

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal