15.02.2013, 13:17
Hi guys, i recently started my own game mode.
I am not getting any errors but when i go on my server to test everything nothing works except for the command/dialogs.
The teams is my main problem.. please fix this! (i am a starter at scripting)
I am not getting any errors but when i go on my server to test everything nothing works except for the command/dialogs.
The teams is my main problem.. please fix this! (i am a starter at scripting)
pawn Код:
/*
SA-MP Crysis nanosuit server made by Prophet
Thanks to:
killer98p: Colours
http://weedarr.wikidot.com/home: Tutorials
*/
//Includes
#include <a_samp>
//Defines
#define GREY 0xAFAFAFAA
#define GREEN 0x33AA33AA
#define RED 0xAA3333AA
#define YELLOW 0xFFFF00AA
#define WHITE 0xFFFFFFAA
#define BLUE 0x0000BBAA
#define LIGHTBLUE 0x33CCFFAA
#define ORANGE 0xFF9900AA
#define RED 0xAA3333AA
#define LIME 0x10F441AA
#define MAGENTA 0xFF00FFFF
#define NAVY 0x000080AA
#define AQUA 0xF0F8FFAA
#define CRIMSON 0xDC143CAA
#define FLBLUE 0x6495EDAA
#define BISQUE 0xFFE4C4AA
#define BLACK 0x000000AA
#define CHARTREUSE 0x7FFF00AA
#define BROWN 0XA52A2AAA
#define CORAL 0xFF7F50AA
#define GOLD 0xB8860BAA
#define GREENYELLOW 0xADFF2FAA
#define INDIGO 0x4B00B0AA
#define IVORY 0xFFFF82AA
#define LAWNGREEN 0x7CFC00AA
#define SEAGREEN 0x20B2AAAA
#define LIMEGREEN 0x32CD32AA
#define MIDNIGHTBLUE 0X191970AA
#define MAROON 0x800000AA
#define OLIVE 0x808000AA
#define ORANGERED 0xFF4500AA
#define PINK 0xFFC0CBAA
#define SPRINGGREEN 0x00FF7FAA
#define TOMATO 0xFF6347AA
#define YELLOWGREEN 0x9ACD32AA
#define CMEDIUMAQUA 0x83BFBFAA
#define MEDIUMMAGENTA 0x8B008BAA
//Teams
#define TEAM_CELL 1
#define TEAM_NANOSUIT 2
#define TEAM_ALIEN 3
//Team colours
#define TEAM_CELL_COLOUR 0x33AA33AA
#define TEAM_NANOSUIT_COLOUR 0x0000BBAA
#define TEAM_ALIEN_COLOUR 0xAA3333AA
//Variables
new gTeam[MAX_PLAYERS];
//==============================================================================
main()
{
print("\n----------------------------------");
print(" CRYSIS Made by Prophet ");
print("----------------------------------\n");
}
public OnGameModeInit()
{
SetGameModeText("CRYSIS ALPHA");
AddPlayerClass(287, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0); // CELL team
AddPlayerClass(285, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0); // NANOSUIT team
AddPlayerClass(279, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0); // ALIEN team
return 1;
}
public OnGameModeExit()
{
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
SetPlayerTeamFromClass(playerid, classid);
SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
return 1;
}
public OnPlayerConnect(playerid)
{
new pName[24];
new str[128];
GetPlayerName(playerid, pName, 24);
format(str, 128, "%s has joined the server.", pName);
SendClientMessageToAll(WHITE, str);
SendClientMessage(playerid, SEAGREEN, "SYSTEM: Welcome to our SA-MP version of Crysis™.");
SendClientMessage(playerid, SEAGREEN, "SYSTEM: If you are in trouble you can use /help.");
SendClientMessage(playerid, SEAGREEN, "SYSTEM: Use /cmds to see a full list of commands.");
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
new pName[24];
new str[128];
GetPlayerName(playerid, pName, 24);
switch(reason)
{
case 0: format(str, 128, "%s has left the server. (Timeout)", pName);
case 1: format(str, 128, "%s has left the server. (Leaving)", pName);
case 2: format(str, 128, "%s has left the server. (Kicked)", pName);
}
SendClientMessageToAll(WHITE, str);
return 1;
}
public OnPlayerSpawn(playerid)
{
SetPlayerToTeamColour(playerid);
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/help", cmdtext, true, 10) == 0)
{
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "{FFFFFF}Help Center", "{00FF00}C.E.L.L: {FFFFFF}As a CELL soldier you have to kill both {FF0000}aliens {FFFFFF}and {0000FF}nanosuit soldiers. \n{FF0000}Alien: {FFFFFF}As a alien you have to kill both {00FF00}C.E.L.L soldiers {FFFFFF}and {0000FF}nanosuits. \n{0000FF}Nanosuits: {FFFFFF}As a nanosuit soldier you have to kill {00FF00}C.E.L.L soldiers {FFFFFF}and the {FF0000}Aliens. \n{FFFFFF}CELL and nanosuits can team!", "Okay", "Exit");
return 1;
}
if (strcmp("/cmds", cmdtext, true, 10) == 0)
{
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_MSGBOX, "{FFFFFF}Command list", "Commands: \n/help /cmds /suicide", "Okay", "Exit");
return 1;
}
if (strcmp("/suicide", cmdtext, true, 10) == 0)
{
SetPlayerHealth(playerid, 0);
return 1;
}
return 0;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
return 1;
}
SetPlayerTeamFromClass(playerid, classid)
{
if(classid == 287)
{
gTeam[playerid] = TEAM_CELL;
}
else if(classid == 285)
{
gTeam[playerid] = TEAM_NANOSUIT;
}
else if(classid == 279)
{
gTeam[playerid] = TEAM_ALIEN;
}
}
SetPlayerToTeamColour(playerid)
{
if(gTeam[playerid] == TEAM_CELL)
{
SetPlayerColor(playerid,TEAM_CELL_COLOUR);
}
else if(gTeam[playerid] == TEAM_NANOSUIT)
{
SetPlayerColor(playerid,TEAM_NANOSUIT_COLOUR);
}
else if(gTeam[playerid] == TEAM_ALIEN)
{
SetPlayerColor(playerid,TEAM_ALIEN_COLOUR);
}
}