#1

how can i show timer for player like GameTextForPlayer +rep for help
PHP код:
forward JailPlayer(player1);
public 
JailPlayer(player1)
{
    
ResetPlayerWeapons(player1);
    
SetPlayerInterior(player1, 3);
    
TogglePlayerControllable(player1,true);
    
SetPlayerPos(player1,197.6661,173.8179,1003.0234);
    
SetCameraBehindPlayer(player1);
    
JailTimer[player1] = SetTimerEx("JailRelease",PlayerInfo[player1][JailTime],0,"d",player1);
    
PlayerInfo[player1][Jailed] = 1;
} 
Reply
#2

pawn Код:
new plTimer[MAX_PLAYERS], plSeconds[MAX_PLAYERS];

public OnPlayerDisconnect(playerid, reason){
    KillTimer(plTimer[playerid]);
    return 1;
}

public OnPlayerConnect(playerid){
    plTimer[playerid] = SetTimerEx("secondTimer", 1000, true, "i", playerid);
    plSeconds[playerid] = 0;
    return 1;
}

forward secondTimer(playerid);
public secondTimer(playerid){
    new str[30];
    plSeconds[playerid] ++;
   
    format(str, sizeof(str), "%d seconds", plSeconds[playerid]);
    GameTextForPlayer(playerid, str, 3000, 5);
    return 1;
}
There's an example for you.
Reply
#3

Quote:
Originally Posted by iGetty
Посмотреть сообщение
There's an example for you.
pawn Код:
GameTextForPlayer(playerid, str, 1000, 5);
3000 will be 3 seconds shown, for a 1 second need.
Reply
#4

Style 5
Displays for 3 seconds, regardless of what time you set. Will refuse to be shown if it is 'spammed'.

https://sampwiki.blast.hk/wiki/GameTextStyle
Reply
#5

Should use 3 or 4 then huh...
Reply
#6

igetty ur code not working ..i mean have some bugs but my code have jail time ..it just not showing me text..just want to make text which shows to player
Quote:

forward Jail1(player1);
public Jail1(player1)
{
TogglePlayerControllable(player1,false);
new Float:x, Float:y, Float:z; GetPlayerPos(player1,x,y,z);
SetPlayerCameraPos(player1,x+10,y,z+10);SetPlayerC ameraLookAt(player1,x,y,z);
Jail2(player1);
}

forward Jail2(player1);
public Jail2(player1)
{
new Float:x, Float:y, Float:z; GetPlayerPos(player1,x,y,z);
SetPlayerCameraPos(player1,x+7,y,z+5); SetPlayerCameraLookAt(player1,x,y,z);
if(GetPlayerState(player1) == PLAYER_STATE_ONFOOT) SetPlayerSpecialAction(player1,SPECIAL_ACTION_HAND SUP);
GameTextForPlayer(player1,"~r~Busted By Admins",3000,3);
Jail3(player1);
}

forward Jail3(player1);
public Jail3(player1)
{
new Float:x, Float:y, Float:z; GetPlayerPos(player1,x,y,z);
SetPlayerCameraPos(player1,x+3,y,z); SetPlayerCameraLookAt(player1,x,y,z);
}

forward JailPlayer(player1);
public JailPlayer(player1)
{
ResetPlayerWeapons(player1);
SetPlayerInterior(player1, 3);
TogglePlayerControllable(player1,true);
SetPlayerPos(player1,197.6661,173.8179,1003.0234);
SetCameraBehindPlayer(player1);
JailTimer[player1] = SetTimerEx("JailRelease",PlayerInfo[player1][JailTime],0,"d",player1);
PlayerInfo[player1][Jailed] = 1;
}
forward MutePlayer(player1);
public MutePlayer(player1)
{
MuteTimer[player1] = SetTimerEx("Muteoff",PlayerInfo[player1][MuteTime],0,"d",player1);
PlayerInfo[player1][Muted] = 1;
}
forward Muteoff(player1);
public Muteoff(player1)
{
KillTimer( MuteTimer[player1] );
PlayerInfo[player1][MuteTime] = 0; PlayerInfo[player1][Muted] = 0;
PlayerPlaySound(player1,1057,0.0,0.0,0.0);

GameTextForPlayer(player1,"~r~unmuted",3000,3);
}

forward JailRelease(player1);
public JailRelease(player1)
{
KillTimer( JailTimer[player1] );
PlayerInfo[player1][JailTime] = 0; PlayerInfo[player1][Jailed] = 0;
SetPlayerInterior(player1,0); SetPlayerPos(player1, 0.0, 0.0, 0.0); SpawnPlayer(player1);
PlayerPlaySound(player1,1057,0.0,0.0,0.0);

GameTextForPlayer(player1,"~g~Released ~n~From Jail",3000,3);
}

Reply
#7

You need to make some of those, parts of the commands that fire them.

Amalgamate things a bit, and use correct indentation...
Reply
#8

here is jail cmd..can u make.. i m newbie..and i just need a gametext and u couldnt
Quote:

CMD:jail(playerid,params[]) {
if(PlayerInfo[playerid][LoggedIn] == 1) {
if(PlayerInfo[playerid][Level] >= 1) {
new tmp[256], tmp2[256], tmp3[256], Index; tmp = strtok(params,Index), tmp2 = strtok(params,Index), tmp3 = strtok(params,Index);
if(isnull(params)) return SendClientMessage(playerid, red, "USAGE: /jail [playerid] [minutes] [reason]");
new player1, playername[MAX_PLAYER_NAME], adminname[MAX_PLAYER_NAME], string[128];
player1 = strval(tmp);

if(IsPlayerConnected(player1) && player1 != INVALID_PLAYER_ID && (PlayerInfo[player1][Level] != ServerInfo[MaxAdminLevel]) ) {
if(PlayerInfo[player1][Jailed] == 0) {
GetPlayerName(player1, playername, sizeof(playername)); GetPlayerName(playerid, adminname, sizeof(adminname));
new jtime = strval(tmp2);
if(jtime == 0) jtime = 9999;

CMDMessageToAdmins(playerid,"JAIL");
PlayerInfo[player1][JailTime] = jtime*1000*60;
SetTimerEx("JailPlayer",5000,0,"d",player1);
SetTimerEx("Jail1",1000,0,"d",player1);
PlayerInfo[player1][Jailed] = 1;
PlayerPlaySound(player1,1057,0.0,0.0,0.0);

if(jtime == 9999) {
if(!strlen(params[strlen(tmp2)+1])) format(string,sizeof(string),"Administrator %s has jailed %s ",adminname, playername);
else format(string,sizeof(string),"Administrator %s has jailed %s [reason: %s]",adminname, playername, params[strlen(tmp)+1] );
} else {
if(!strlen(tmp3)) format(string,sizeof(string),"Administrator %s has jailed %s for %d minutes",adminname, playername, jtime);
else format(string,sizeof(string),"Administrator %s has jailed %s for %d minutes [reason: %s]",adminname, playername, jtime, params[strlen(tmp2)+strlen(tmp)+1] );
}
return SendClientMessageToAll(blue,string);
} else return SendClientMessage(playerid, red, "Player is already in jail");
} else return SendClientMessage(playerid, red, "Player is not connected or is the highest level admin");
} else return SendClientMessage(playerid,red,"ERROR: You are not a high enough level to use this command");
} else return SendClientMessage(playerid,red,"ERROR: You must be logged in to use this commands");
}

Reply


Forum Jump:


Users browsing this thread: