30.07.2011, 10:11
How to make these Commands with ZCMD?
/freeze, /unfreeze, /goto, /gethere?
/freeze, /unfreeze, /goto, /gethere?
CMD:freeze(playerid, params[])
{
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, 0xFF0000FF, "You are not an admin!");
new iPlayer;
if(sscanf(params, "i", iPlayer)) return SendClientMessage(playerid, 0xFF0000FF, "Usage: /freeze [Player ID]");
if(!IsPlayerConnected(iPlayer)) return SendClientMessage(playerid, 0xFF0000FF, "Player is not connected.");
TogglePlayerControllable(iPlayer, false);
SendClientMessage(iPlayer, 0x00FFFF, "You are frozen!");
return true;
}
CMD:goto(playerid, params[])
{
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, 0xFF0000FF, "You are not an admin!");
new iPlayer;
if(sscanf(params, "i", iPlayer)) return SendClientMessage(playerid, 0xFF0000FF, "Usage: /goto [Player ID]");
if(!IsPlayerConnected(iPlayer)) return SendClientMessage(playerid, 0xFF0000FF, "Player is not connected.");
new Float:P[3];
GetPlayerPos(iPlayer, P[0], P[1], P[2]);
SetPlayerPos(playerid, P[0]+1, P[1]+1, P[2]);
SendClientMessage(playerid, 0xFF0000FF, "You teleported to this player.");
return true;
}
CMD:freeze( playerid, params[ ] )
{
if ( !IsPlayerAdmin( playerid ) )
return SendClientMessage( playerid, -1, "You are not an administrator." );
new
bool: useReason = false,
pID,
reason[ 64 ]
;
if ( sscanf( params, "u", pID ) )
return SendClientMessage( playerid, -1, "Usage: /Freeze [ playerid / partofname ] [ optional: reason ]" );
if ( !sscanf( params, "us[64]", reason ) )
useReason = true;
if ( !useReason )
reason = "Not specified";
if ( pID == INVALID_PLAYER_ID )
return SendClientMessage( playerid, -1, "That player is not connected." );
new
szStr[ 128 ]
;
format( szStr, sizeof szStr, "*** You have been frozed by admin %s. ( Reason: %s )", getName( playerid ), reason );
TogglePlayerControllable( pID, false );
SendClientMessage( pID, -1, szStr );
SendClientMessage( playerid, -1, "Player has been freezed." );
useReason = false;
return 1;
}
iPLEOMAX use "u" for player ID's ( partOfName or playerID )
With a reason part ( can be used without a reason or with a reason ). pawn Код:
|
if ( !useReason )
reason = "Not specified";
if ( !sscanf( params, "uS(Not specified)[64]", reason ) )
CMD:freeze( playerid, params[ ] )
{
if ( !IsPlayerAdmin( playerid ) )
return SendClientMessage( playerid, -1, "You are not an administrator." );
new
pID,
reason[ 64 ]
;
if ( sscanf( params, "uS(Not specified)[64]", pID, reason ) )
return SendClientMessage( playerid, -1, "Usage: /Freeze [ playerid / partofname ] [ optional: reason ]" );
if ( pID == INVALID_PLAYER_ID )
return SendClientMessage( playerid, -1, "That player is not connected." );
new
szStr[ 128 ]
;
format( szStr, sizeof szStr, "*** You have been frozed by admin %s. ( Reason: %s )", getName( playerid ), reason );
TogglePlayerControllable( pID, false );
SendClientMessage( pID, -1, szStr );
SendClientMessage( playerid, -1, "Player has been freezed." );
return 1;
}