All pastes #258186 Raw Edit

Mine

public text v1 · immutable
#258186 ·published 2006-11-26 06:37 UTC
rendered paste body
#include <a_samp>
#include <core>
#include <float>
static gHour;

//Global stuff and defines for our gamemode
static gTeam[MAX_PLAYERS];
new gPlayerClass[MAX_PLAYERS];
new gPlayerCheckpointStatus[MAX_PLAYERS];

//Color Defines
#define COLOR_GREEN 0x33AA33AA
#define COLOR_PURPLE 0x800080AA
#define COLOR_GOLD 0xFFD700AA
#define COLOR_TURQUOISE 0x40E0D0AA
#define COLOR_GREY 0xAFAFAFAA

//Team Defines
#define TEAM_GROVE 0
#define TEAM_BALLA 1
#define TEAM_VAGOS 2
#define TEAM_AZTECAZ 3

//Checkpoints
#define CHECKPOINT_NONE 0
#define CHECKPOINT_SWEETS 1
#define CHECKPOINT_RYDERS 2
#define CHECKPOINT_BALLA2S 3
#define CHECKPOINT_BALLA3S 4
#define CHECKPOINT_VAGOS1S 5
#define CHECKPOINT_VAGOS2S 6
#define CHECKPOINT_VAGOS3S 7
#define CHECKPOINT_AZTECAZ1S 8
#define CHECKPOINT_AZTECAZ2S 9
#define CHECKPOINT_AZTECAZ3S 10

main()
{
	print("\n---------------------------------------");
	print("  The Gangs of Los Santos by [NR]Luke");
	print("---------------------------------------\n");
}


//------------------------------------------------------------------------------

public OnGameModeInit()
{
	SetGameModeText("The Gangs of Los Santos");
	SetTimer("ChangeTime", 60000,1);
//Player Spawns
	AddPlayerClass(105,2495.9998,-1708.4066,1014.7422,359.3530,0,0,0,0,0,0); // Grove Spawn 1
	AddPlayerClass(106,2536.0571,-1674.5150,1015.4986,91.8100,0,0,0,0,0,0); // Grove Spawn 2
	AddPlayerClass(107,2449.7056,-1692.3264,1013.5078,167.8490,0,0,0,0,0,0); // Grove Spawn 3
	AddPlayerClass(102,2278.8496,-1134.5461,1050.8984,269.6341,0,0,0,0,0,0); // Balla Spawn 1
	AddPlayerClass(103,231.5691,1246.4398,1082.1406,118.1860,0,0,0,0,0,0); // Balla Spawn 2
	AddPlayerClass(104,230.2577,1287.7933,1082.1406,1.8755,0,0,0,0,0,0); // Balla Spawn 3
	AddPlayerClass(108,246.3398,1106.5414,1080.9922,45.2748,0,0,0,0,0,0); // Vagos Spawn 1
	AddPlayerClass(109,227.2937,1081.1320,1084.2228,1.9199,0,0,0,0,0,0); // Vagos Spawn 2
	AddPlayerClass(110,94.8406,1338.0596,1083.8594,91.0051,0,0,0,0,0,0); // Vagos Spawn 3
	AddPlayerClass(114,295.2022,1487.7212,1080.2578,182.0828,0,0,0,0,0,0); // Aztecaz Spawn 1
	AddPlayerClass(115,2374.1045,-1126.5098,1050.8750,90.8741,0,0,0,0,0,0); // Aztecaz Spawn 2
	AddPlayerClass(116,383.1349,1459.9299,1080.1949,1.4753,0,0,0,0,0,0); // Aztecaz Spawn 3
	return 1;
}

//------------------------------------------------------------------------------

public OnPlayerRequestClass(playerid, classid)
{
	SetupPlayerForClassSelection(playerid);
    SetPlayerTeamFromClass(playerid, classid);
    gPlayerClass[playerid] = classid;
	return 1;
}

//------------------------------------------------------------------------------

public SetupPlayerForClassSelection(playerid)
{
	SetPlayerInterior(playerid,3);
	SetPlayerPos(playerid, -2666.9583,1428.6624,906.4609);
	SetPlayerFacingAngle(playerid, 180.0);
	SetPlayerCameraPos(playerid, -2666.9807,1425.2913,907.0000);
	SetPlayerCameraLookAt(playerid, -2666.9583,1428.6624,906.4609);
}

//------------------------------------------------------------------------------

public SetPlayerTeamFromClass(playerid, classid)
{
	if(classid == 0 || classid == 1 || classid == 2)
	{
		gTeam[playerid] = TEAM_GROVE;
	}
	if(classid == 3 || classid == 4 || classid == 5)
	{
		gTeam[playerid] = TEAM_BALLA;
	}
	if(classid == 6 || classid == 7 || classid == 8)
	{
		gTeam[playerid] = TEAM_VAGOS;
	}
	if(classid == 9 || classid == 10 || classid == 11)
	{
		gTeam[playerid] = TEAM_AZTECAZ;
	}
}

//------------------------------------------------------------------------------

public SetPlayerToTeamColor(playerid)
{
	if (gTeam[playerid] == TEAM_GROVE)
	{
		SetPlayerColor(playerid, COLOR_GREEN);
	}
	if (gTeam[playerid] == TEAM_BALLA)
	{
		SetPlayerColor(playerid, COLOR_PURPLE);
	}
	if (gTeam[playerid] == TEAM_VAGOS)
	{
		SetPlayerColor(playerid, COLOR_GOLD);
	}
	if (gTeam[playerid] == TEAM_AZTECAZ)
	{
		SetPlayerColor(playerid, COLOR_TURQUOISE);
	}
}

//------------------------------------------------------------------------------

public OnGameModeExit()
{
	print("GameModeExit()");
	return 1;
}

//------------------------------------------------------------------------------

public OnPlayerConnect(playerid)
{
	GameTextForPlayer(playerid, "~w~Welcome to ~n~~g~The Gangs of Los Santos",3000,3);
	SetPlayerColor(playerid, COLOR_GREY); // Set the player's color to inactive
	return 1;
}

//------------------------------------------------------------------------------

public OnPlayerDisconnect(playerid)
{
	printf("OnPlayerDisconnect(%d)", playerid);
	return 1;
}

//------------------------------------------------------------------------------

public OnPlayerSpawn(playerid)
{
	SetPlayerToTeamColor(playerid);
	switch (gPlayerClass[playerid]) {
	case 0:
	{
	    gPlayerCheckpointStatus[playerid] = CHECKPOINT_NONE;
		SetPlayerInterior(playerid,3);
	}
	case 1:
	{
	    gPlayerCheckpointStatus[playerid] = CHECKPOINT_SWEETS;
	    SetPlayerCheckpoint(playerid,2527.2344,-1679.3248,1015.4986,2.0);
		SetPlayerInterior(playerid,1);
	}
	case 2:
	{
	    gPlayerCheckpointStatus[playerid] = CHECKPOINT_RYDERS;
	    SetPlayerCheckpoint(playerid,2465.4492,-1698.3481,1013.5152,2.0);
		SetPlayerInterior(playerid,2);
	}
	case 3:
	{
	    gPlayerCheckpointStatus[playerid] = CHECKPOINT_NONE;
		SetPlayerInterior(playerid,11);
	}
	case 4:
	{
	    gPlayerCheckpointStatus[playerid] = CHECKPOINT_BALLA2S;
	    SetPlayerCheckpoint(playerid,225.1236,1239.8646,1082.1406,2.0);
		SetPlayerInterior(playerid,2);
	}
	case 5:
	{
	    gPlayerCheckpointStatus[playerid] = CHECKPOINT_BALLA3S;
	    SetPlayerCheckpoint(playerid,223.0378,1288.7797,1082.1406,2.0);
		SetPlayerInterior(playerid,1);
	}
	case 6:
	{
		gPlayerCheckpointStatus[playerid] = CHECKPOINT_VAGOS1S;
	    SetPlayerCheckpoint(playerid,227.9811,1114.3020,1080.9922,2.0);
		SetPlayerInterior(playerid,5);
	}
	case 7:
	{
		gPlayerCheckpointStatus[playerid] = CHECKPOINT_VAGOS2S;
	    SetPlayerCheckpoint(playerid,234.1464,1065.3550,1084.2098,2.0);
		SetPlayerInterior(playerid,6);
	}
	case 8:
	{
		gPlayerCheckpointStatus[playerid] = CHECKPOINT_VAGOS3S;
	    SetPlayerCheckpoint(playerid,83.0620,1323.9619,1083.8594,2.0);
		SetPlayerInterior(playerid,9);
	}
	case 9:
	{
		gPlayerCheckpointStatus[playerid] = CHECKPOINT_AZTECAZ1S;
	    SetPlayerCheckpoint(playerid,295.8752,1473.0287,1080.2578,2.0);
		SetPlayerInterior(playerid,15);
	}
	case 10:
	{
		gPlayerCheckpointStatus[playerid] = CHECKPOINT_AZTECAZ2S;
	    SetPlayerCheckpoint(playerid,2365.2695,-1133.5463,1050.8750,2.0);
		SetPlayerInterior(playerid,8);
	}
	case 11:
	{
		gPlayerCheckpointStatus[playerid] = CHECKPOINT_AZTECAZ3S;
	    SetPlayerCheckpoint(playerid,386.2067,1471.6661,1080.1949,2.0);
		SetPlayerInterior(playerid,15);
	}
}
	return 1;
}

//------------------------------------------------------------------------------

public OnPlayerDeath(playerid, killerid, reason)
{
	printf("OnPlayerDeath(%d, %d, %d)", playerid, killerid, reason);
	return 1;
}

//------------------------------------------------------------------------------

public OnVehicleSpawn(vehicleid)
{
	printf("OnVehicleSpawn(%d)", vehicleid);
	return 1;
}

//------------------------------------------------------------------------------

public OnVehicleDeath(vehicleid, killerid)
{
	printf("OnVehicleDeath(%d, %d)", vehicleid, killerid);
	return 1;
}

//------------------------------------------------------------------------------

public OnPlayerText(playerid)
{
	printf("OnPlayerText(%d)", playerid);
	return 1;
}

//------------------------------------------------------------------------------

public OnPlayerCommandText(playerid, cmdtext[])
{
	if (strcmp(cmdtext, "/mycommand", true)==0)
	{
	    /* Do something here */
	    return 1;
	}
	return 0;
}

//------------------------------------------------------------------------------

public TimeUpdate()
{
	static vartime = 12;
	vartime++;
	vartime %= 24;
	return SetWorldTime(vartime);
}

//------------------------------------------------------------------------------

public ChangeTime(){
	if(gHour<24){
		gHour++;
	}
	else{
		gHour=1;
	}
	SetWorldTime(gHour);
}

//------------------------------------------------------------------------------

public OnPlayerInfoChange(playerid)
{
	printf("OnPlayerInfoChange(%d)");
	return 1;
}

//------------------------------------------------------------------------------

public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
	printf("OnPlayerEnterVehicle(%d, %d, %d)", playerid, vehicleid, ispassenger);
	return 1;
}

//------------------------------------------------------------------------------

public OnPlayerExitVehicle(playerid, vehicleid)
{
	printf("OnPlayerExitVehicle(%d, %d)", playerid, vehicleid);
	return 1;
}

//------------------------------------------------------------------------------

public OnPlayerStateChange(playerid, newstate, oldstate)
{
	printf("OnPlayerStateChange(%d, %d, %d)", playerid, newstate, oldstate);
	return 1;
}

//------------------------------------------------------------------------------

public OnPlayerEnterCheckpoint(playerid)
{
	switch (gPlayerCheckpointStatus[playerid]) {
	case CHECKPOINT_SWEETS:
	{
	    SetPlayerInterior(playerid,0);
	    SetPlayerPos(playerid, 2518.9106,-1678.5797,14.5851);
	    DisablePlayerCheckpoint(playerid);
		gPlayerCheckpointStatus[playerid] = CHECKPOINT_NONE;
	}
	case CHECKPOINT_RYDERS:
	{
	    SetPlayerInterior(playerid,0);
	    SetPlayerPos(playerid, 2459.4639,-1688.0045,13.5337);
	    DisablePlayerCheckpoint(playerid);
		gPlayerCheckpointStatus[playerid] = CHECKPOINT_NONE;
	}
	case CHECKPOINT_BALLA2S:
	{
		SetPlayerInterior(playerid,0);
		SetPlayerPos(playerid, 2091.5889,-1279.8253,26.0205);
		DisablePlayerCheckpoint(playerid);
		gPlayerCheckpointStatus[playerid] = CHECKPOINT_NONE;
	}
	case CHECKPOINT_BALLA3S:
	{
		SetPlayerInterior(playerid,0);
		SetPlayerPos(playerid, 2132.2344,-1281.3669,25.8675);
		DisablePlayerCheckpoint(playerid);
		gPlayerCheckpointStatus[playerid] = CHECKPOINT_NONE;
	}
	case CHECKPOINT_VAGOS1S:
	{
		SetPlayerInterior(playerid,0);
		SetPlayerPos(playerid, 2630.1023,-1068.6461,69.6190);
		DisablePlayerCheckpoint(playerid);
		gPlayerCheckpointStatus[playerid] = CHECKPOINT_NONE;
	}
	case CHECKPOINT_VAGOS2S:
	{
		SetPlayerInterior(playerid,0);
		SetPlayerPos(playerid, 2629.5522,-1082.4749,69.6180);
		DisablePlayerCheckpoint(playerid);
		gPlayerCheckpointStatus[playerid] = CHECKPOINT_NONE;
	}
	case CHECKPOINT_VAGOS3S:
	{
		SetPlayerInterior(playerid,0);
		SetPlayerPos(playerid, 2627.9729,-1098.6667,69.3671);
		DisablePlayerCheckpoint(playerid);
		gPlayerCheckpointStatus[playerid] = CHECKPOINT_NONE;
	}
	case CHECKPOINT_AZTECAZ1S:
	{
		SetPlayerInterior(playerid,0);
		SetPlayerPos(playerid, 1695.4773,-2123.9504,13.5469);
		DisablePlayerCheckpoint(playerid);
		gPlayerCheckpointStatus[playerid] = CHECKPOINT_NONE;
	}
	case CHECKPOINT_AZTECAZ2S:
	{
		SetPlayerInterior(playerid,0);
		SetPlayerPos(playerid, 1684.9708,-2101.3320,13.8343);
		DisablePlayerCheckpoint(playerid);
		gPlayerCheckpointStatus[playerid] = CHECKPOINT_NONE;
	}
	case CHECKPOINT_AZTECAZ3S:
	{
		SetPlayerInterior(playerid,0);
		SetPlayerPos(playerid, 1675.4622,-2120.7778,13.5469);
		DisablePlayerCheckpoint(playerid);
		gPlayerCheckpointStatus[playerid] = CHECKPOINT_NONE;
	}
	default:
	{
		DisablePlayerCheckpoint(playerid);
	}
}
	return 1;
}