most írtam egy komplett módot csak neked, a játék állását nem tudod megnézni, de mindent át tudsz írni.. a max pontot, a csapat neveket, stb. minden mellett ott a magyarázat, ha az egyik csapat eléri a max pontot, akkor kezdõdik az új kör!
használd egészséggel!
#include <a_samp>
new gTeam[MAX_PLAYERS];
new TEAM_1; // az elsõ csapat...
new TEAM_2; // a második csapat...
#define TEAM_1_NAME USMC //itt állíthatod be az elsõ csapat nevét
#define TEAM_2_NAME OPFOR //itt állíthatod be a második csapat nevét
new TEAM_1_SCORE; //az elsõ csapat pontjainak száma
new TEAM_2_SCORE; //a második csapat pontjainak száma
#define MAX_SCORE 200 //itt állíthatod be a maximum pontot
#define TEAM_1_SPAWN -1592.1416,882.0182,50.2172 // X, Y, z formátumban az elsõ csapat Spawnját
#define TEAM_2_SPAWN -1593.0975,890.9891,50.2172 //X, Y, Z formátumban a második csapat Spawnját
#define COLOR_GREEN 0x00FF009E// meghatároztam a zöld színt
#define COLOR_RED 0xFF0000C8// meghatároztam a piros szín
#if defined FILTERSCRIPT
public OnFilterScriptInit()
{
print(\"\\n--------------------------------------\");
print(\" Blank Filterscript by your name here\");
print(\"--------------------------------------\\n\");
return 1;
}
public OnFilterScriptExit()
{
return 1;
}
#else
main()
{
print(\"\\n----------------------------------\");
print(\" Blank Gamemode by your name here\");
print(\"----------------------------------\\n\");
}
#endif
public OnGameModeInit()
{
// Don\'t use these lines if it\'s a filterscript
SetGameModeText(\"Simple War Mod\");
AddPlayerClass(285, TEAM_1_SPAWN, 269.1425, 0, 0, 0, 0, 0, 0);
AddPlayerClass(287, TEAM_2_SPAWN, 269.1425, 0, 0, 0, 0, 0, 0);
SetTimer(\"OnPlayerUpdate\", 1000, 1);
return 1;
}
public OnGameModeExit()
{
return 1;
}
public OnPlayerRequestClass(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);
if(classid == 0)
{
GameTextForPlayer(playerid, \"~b~ USMC\", 9000, 3); //csapatválasztás
gTeam[playerid] = TEAM_1;
}
else if(classid == 1)
{
GameTextForPlayer(playerid, \"~r~ OP FOR\", 9000, 3); //csapatválasztás
gTeam[playerid] = TEAM_2;
}
return 1;
}
public OnPlayerConnect(playerid)
{
SendClientMessage(playerid, COLOR_GREEN, \"Üdvözöllek a szerveren!\"); //üdvözlõ üzenet
SendClientMessage(playerid, COLOR_GREEN, \"A játék célja, hogy elérjétek a max pontot!\");
SendClientMessage(playerid, COLOR_GREEN, \"Jó játékot!\");
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
return 1;
}
public OnPlayerSpawn(playerid)
{
if (gTeam[playerid] == TEAM_1)
{
SetPlayerPos(playerid, TEAM_1_SPAWN);
return 1;
}
if (gTeam[playerid] == TEAM_2)
{
SetPlayerPos(playerid, TEAM_2_SPAWN);
return 1;
}
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
if (gTeam[killerid] == TEAM_1)
{
TEAM_1_SCORE = TEAM_1_SCORE +10; //ha az elsõ csapat tagja lõ le valakit, az elsõ csapat kap 10 pontot
return 1;
}
if (gTeam[killerid] == TEAM_2)
{
TEAM_2_SCORE = TEAM_2_SCORE + 10; //ha a másik csapat tagja lõ le valakit, a második csapat kap 10 pontot
return 1;
}
if (gTeam[killerid] == gTeam[playerid])
{
SetPlayerHealth(killerid,0.0);
SendClientMessage(playerid, COLOR_RED, \"Ne a sajátjaidat lõjed!\");
return 1;
}
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp(\"/help\", cmdtext, true, 10) == 0)
{
SendClientMessage(playerid, COLOR_GREEN, \"A játék lényege, hogy elérjétek a maximum pontot!\");
SendClientMessage(playerid, COLOR_GREEN, \"Ha hamarabb eléritek a pontszámot, a csapatod nyert\");
SendClientMessage(playerid, COLOR_GREEN, \"Köszi, hogy nálunk játszol!\");
return 1;
}
return 0;
}
public OnPlayerUpdate(playerid)
{
if (TEAM_1_SCORE >= MAX_SCORE)
{
new string[256], TEAM_1_NAME;
format(string, sizeof(string), \"%d nyert!\",TEAM_1_NAME);
RespawnAll();
}
if (TEAM_2_SCORE >= MAX_SCORE)
{
new string[256], TEAM_2_NAME;
format(string, sizeof(string), \"%d nyert!\",TEAM_2_NAME);
RespawnAll();
}
return 1;
}
forward RespawnAll();
public RespawnAll()
{
for(new i=0; i<MAX_PLAYERS; i++)
{
SetPlayerHealth(i,0);
}
}