Give something for couple seconds -
henkas - 16.10.2016
I have one question how need give something for couple seconds like
Код:
if(PRESSED(KEY_WALK))
{
if(team[playerid] == TEAM_ZOMBIE)
{
if(pInfo[playerid][pZombieClass] == ROGUEZOMBIE)
{
if(gettime() - 60 < Abilitys[playerid][ChangeSkinZombie]) return GameTextForPlayer(playerid,"~w~ Still recovering",1000,5);
{
Abilitys[playerid][ChangeSkinZombie] = gettime();
SetPlayerColor(playerid,COLOR_HUMAN);
switch(random(5))
{
case 0: SetPlayerSkin(playerid,5);
case 1: SetPlayerSkin(playerid,23);
case 2: SetPlayerSkin(playerid,56);
case 3: SetPlayerSkin(playerid,289);
case 4: SetPlayerSkin(playerid,299);
}
}
}
}
}
This function work now when i press l-alt i get random skin and name color, bat i want make now, when over like 30seconds everything going back, my regular skin,nick color.
bumbumbum
Respuesta: Give something for couple seconds -
Zume - 16.10.2016
PHP код:
if(gettime() - 60 < Abilitys[playerid][ChangeSkinZombie]) return GameTextForPlayer(playerid,"~w~ Still recovering",1000,5);
This is a error, why? if you have more keys with the same key in this callback below this not won't be executed
And you can return name and skin to player with some like this:
PHP код:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if(PRESSED(KEY_WALK)) {
if(team[playerid] == TEAM_ZOMBIE && pInfo[playerid][pZombieClass] == ROGUEZOMBIE) {
if(Abilitys[playerid][ChangeSkinZombie] < gettime()){
SetPVarInt(playerid, "afterColor", GetPlayerColor(playerid));
SetPVarInt(playerid, "afterSkin", GetPlayerSkin(playerid));
Abilitys[playerid][ChangeSkinZombie] = gettime() + 60;
SetPlayerColor(playerid, COLOR_HUMAN);
static RandomHumanSkin[] = {
5, 23, 56, 289, 299
};
SetPlayerSkin(playerid, RandomHumanSkin[random(sizeof(RandomHumanSkin) - 1)]); // now you don't need to specify quantities
SetTimerEx("ReturnBack", 1000*30, false, "i", playerid);
} else {
GameTextForPlayer(playerid,"~w~ Still recovering",1000,5);
}
}
}
return 1;
}
forward ReturnBack(playerid);
public ReturnBack(playerid)
{
SetPlayerSkin(playerid, GetPVarInt("afterSkin"));
SetPlayerColor(playerid, GetPVarInt("afterColor"));
return 1;
}
But GetPlayerColor only works if you used SetPlayerColor before
Re: Respuesta: Give something for couple seconds -
henkas - 17.10.2016
Quote:
Originally Posted by Zume
PHP код:
if(gettime() - 60 < Abilitys[playerid][ChangeSkinZombie]) return GameTextForPlayer(playerid,"~w~ Still recovering",1000,5);
This is a error, why? if you have more keys with the same key in this callback below this not won't be executed
And you can return name and skin to player with some like this:
PHP код:
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if(PRESSED(KEY_WALK)) {
if(team[playerid] == TEAM_ZOMBIE && pInfo[playerid][pZombieClass] == ROGUEZOMBIE) {
if(Abilitys[playerid][ChangeSkinZombie] < gettime()){
SetPVarInt(playerid, "afterColor", GetPlayerColor(playerid));
SetPVarInt(playerid, "afterSkin", GetPlayerSkin(playerid));
Abilitys[playerid][ChangeSkinZombie] = gettime() + 60;
SetPlayerColor(playerid, COLOR_HUMAN);
static RandomHumanSkin[] = {
5, 23, 56, 289, 299
};
SetPlayerSkin(playerid, RandomHumanSkin[random(sizeof(RandomHumanSkin) - 1)]); // now you don't need to specify quantities
SetTimerEx("ReturnBack", 1000*30, false, "i", playerid);
} else {
GameTextForPlayer(playerid,"~w~ Still recovering",1000,5);
}
}
}
return 1;
}
forward ReturnBack(playerid);
public ReturnBack(playerid)
{
SetPlayerSkin(playerid, GetPVarInt("afterSkin"));
SetPlayerColor(playerid, GetPVarInt("afterColor"));
return 1;
}
But GetPlayerColor only works if you used SetPlayerColor before
|
Got these error
error 035: argument type mismatch (argument 1)
at this lines
Код:
SetPlayerSkin(playerid, GetPVarInt("afterSkin"));
SetPlayerColor(playerid, GetPVarInt("afterColor"));
Re: Give something for couple seconds -
henkas - 17.10.2016
Help fix these errors.
Re: Give something for couple seconds -
henkas - 17.10.2016
How should i fix this error?
Re: Give something for couple seconds -
henkas - 17.10.2016
Got these error
error 035: argument type mismatch (argument 1)
at this lines
Code:
SetPlayerSkin(playerid, GetPVarInt("afterSkin"));
SetPlayerColor(playerid, GetPVarInt("afterColor"));
Re: Give something for couple seconds -
jlalt - 17.10.2016
https://sampwiki.blast.hk/wiki/GetPVarInt
PHP код:
GetPVarInt(playerid, varname[]);
PHP код:
forward ReturnBack(playerid);
public ReturnBack(playerid)
{
SetPlayerSkin(playerid, GetPVarInt(playerid, "afterSkin"));
SetPlayerColor(playerid, GetPVarInt(playerid, "afterColor"));
return 1;
}
Re: Give something for couple seconds -
henkas - 17.10.2016
Quote:
Originally Posted by jlalt
https://sampwiki.blast.hk/wiki/GetPVarInt
PHP код:
GetPVarInt(playerid, varname[]);
PHP код:
forward ReturnBack(playerid);
public ReturnBack(playerid)
{
SetPlayerSkin(playerid, GetPVarInt(playerid, "afterSkin"));
SetPlayerColor(playerid, GetPVarInt(playerid, "afterColor"));
return 1;
}
|
Thanks a lot. Done with this.