08.08.2009, 18:03
You may delete this, i got helped by a kind person mademan..
new Killed[MAX_PLAYERS];
public OnGameModeInit()
{
Textdraw0 = TextDrawCreate(176.000000,390.000000,"Spectating, respawn in 10 seconds");
TextDrawAlignment(Textdraw0,0);
TextDrawBackgroundColor(Textdraw0,0x000000ff);
TextDrawFont(Textdraw0,3);
TextDrawLetterSize(Textdraw0,0.499999,0.799999);
TextDrawColor(Textdraw0,0xffffff99);
TextDrawSetOutline(Textdraw0,1);
TextDrawSetProportional(Textdraw0,1);
TextDrawSetShadow(Textdraw0,1);
}
public OnPlayerRequestClass(playerid, classid)
{
Killed[playerid] = -1;
}
public OnPlayerSpawn(playerid)
{
if(Killed[playerid] != -1)
{
TextDrawShowForPlayer (playerid, Textdraw0);
TogglePlayerSpectating(playerid, 1);
SetTimerEx("StopSpeccing", 10000, false, "i", playerid);
if(Killed[playerid] != INVALID_PLAYER_ID)
{
PlayerSpectatePlayer(playerid, Killed[playerid]);
}
else
{
PlayerSpectatePlayer(playerid, GetRandomID());
if (IsPlayerInAnyVehicle(GetRandomID())) PlayerSpectateVehicle(playerid, GetPlayerVehicleID(GetRandomID()));
}
}
}
public OnPlayerDeath(playerid, killerid, reason)
{
Killed[playerid] = killerid;
if(killerid == INVALID_PLAYER_ID) {
SendDeathMessage(INVALID_PLAYER_ID,playerid,reason);
} else {
if(gTeam[killerid] != gTeam[playerid]) {
// Valid kill
SendDeathMessage(killerid,playerid,reason);
SetPlayerScore(killerid,GetPlayerScore(killerid)+1);
GivePlayerMoney(killerid, 1000);
}
}
return 1;
}