Jump to content
  • 0

probleme despre functia IsPlayerinVehicle


Sfinx_17

Question

am incercat sa imi fac un anumit cod ptr hunter...cand intrii in el sa iti ia cate un dolar pe secunda dar cand am dat compile imi arata ca e bun codul nu imi dadea nici o erroare nimic..cand intrasem in joc sa iau hunterul dc nu imi scade nimic  :-[ plz careva cn stie bine sa imi zica multumesc !

astai codul:

public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
    if(IsPlayerInVehicle(playerid, 425))
{
 	GetPlayerMoney(playerid);
 	SetTimer("FunctiaMeaPentruTimp", 1000, true);
    SendClientMessage(playerid,0xFFFFFFAA,"You're in Hunter!");
    return 1;
}
	return 0;
}

public FunctiaMeaPentruTimp() // functia asta e pentru SetTimer ce am creato deasupra
{
	print("o secunda rocmai a trecut");
}

Link to comment
Share on other sites

8 answers to this question

Recommended Posts

IsPlayerInVehicle e pentru ID,nu pentru model,deci ca sa il folosesti IsPlayerInVehicle(playerid,2)//2 fiind o masina simpla,cu ID 2

public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
    if(GetVehicleModel(vehicleid)==425)
{
 	GetPlayerMoney(playerid);
 	SetTimer("FunctiaMeaPentruTimp", 1000, true);
    SendClientMessage(playerid,0xFFFFFFAA,"You're in Hunter!");
    return 1;
}
	return 0;
}

public FunctiaMeaPentruTimp() // functia asta e pentru SetTimer ce am creato deasupra
{
	print("o secunda tocmai a trecut");
}

Link to comment
Share on other sites

astai codul:

public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
    if(GetVehicleModel(vehicleid)==425)
{
 	GetPlayerMoney(playerid);
 	SetTimer("FunctiaMeaPentruTimp", 1000, true);
    SendClientMessage(playerid,0xFFFFFFAA,"You're in Hunter!");
    return 1;
}
	return 0;
}

public FunctiaMeaPentruTimp() // functia asta e pentru SetTimer ce am creato deasupra
{
	print("o secunda tocmai a trecut");
}

plz

Link to comment
Share on other sites

Sa dai bani faci GivePlayerMoney(playerid, +suma); sau GivePlayerMoney(playerid, -suma);

@matrixismyname: vezi cum vorbesti.

public OnPlayerStateChange(playerid, newstate, oldstate)//am scris-o din minte s-ar putea sa fie oldstate si dupa newstate
{
    if(newstate == PLAYER_STATE_DRIVER )
    {
        new veh = GetPlayerVehicleID(playerid);
        if( GetVehicleModel(veh) == 425 )
        {
            SetTimerEx("FunctiaMeaPentruTimp", 1000, 0, "i", playerid );
            SendClientMessage(playerid,0xFFFFFFAA,"You're in Hunter!");
        }
    }
    return 1;
}

forward FunctiaMeaPentruTimp(playerid);
public FunctiaMeaPentruTimp(playerid) // functia asta e pentru SetTimerEx ce am creat-o deasupra
{
    if( IsPlayerInAnyVehicle(playerid) )
    {
        if( GetVehicleModel(GetPlayerVehicleID(playerid)) == 425 )
        {
            print("o secunda tocmai a trecut");
            GivePlayerMoney(playerid, +1);
            SetTimerEx("FunctiaMeaPentruTimp", 1000, 0, "i", playerid );
        }
    }
    return 1;
}

Citeste tot:

Ceea ce ti-am facut a fost sa-ti schimb de la OnPlayerEnterVehicle la OnPlayerStateChange, care e mult mai bun decat EnterVehicle pt ca e chemat atunci cand playerul se aseaza in vehicul, nu cand deschide portiera sau apesi F si se indreapta spre vehicul.

A 2a chestie, a fost ca am setat SetTimerEx nu SetTimer, diferenta e ca Ex poate fii pus pentru un anumit parametru, ca playerid, vehicleid sau ce ai tu acolo.

A 3a chestie, nu-l am pus sa se repete deoarece in el se verifica daca playerul e inca in Hunter, si daca e Timerul se seteaza din nou, si ii da 1$ de fiecare data.

A 4a chestie, NU CONFUNDA MODELUL cu IDul ! IDul e numarul de ordine al vehiculului sau o variabila pe care i-o pui tu cu X = CreateVehicle (de exemplu ), iar modelul e felul in care arata, de exemplu la tine 425 e modelul, IDul nu e nevoie sa-l stii personal, pentru ca-l afli de la player (ca sta in el).

-Toate tutorialele postate intra aici sau puneti-le direct [url=http://www.sa-mp.ro/forum/index

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.