-
Sziasztok! Abba a Problémába estem hogy csináltam egy TDM Módot Két csapatra van osztva! ÉS azt szeretném hogy \"Random Spawn\"-al Történjen a spawnolás! De úgy hogy Mondjuk egyik csapatnak csinálok 8 darab spawn helyet és a másiknak is csak a másik csapat 8 helye már máshol van!
PL: Motorosok: 8 Hely Ami ilyen Stuntos Hely! A Másik pl: repcsisek: Öket random spawnba a reptereken stb..!
ezt hogy tudom megoldani? Légyszi help mert nagyon fontos lenne!
-
Amikor egy játékos csatlakozik, dobj ki neki egy menüt, hogy a mód át tudja állítani a játékost a csapatba.
Az lvdm-bõl kiszeded a random spawnt- és elágazod 2 csapattal.
És elvileg kész is.
Tessék szólni ha rosszul jártatom a számat. :)
-
new Float:Motorosok[ ][ 4 ] = // 4 = 4 koordináta, azaz 4 különbözõ spawn hely
{
{X, Y, Z, Elfordulási_szög},
{ },
{ },
{} // az utolsó után ne írj vesszõt!
};
new Float:Repcsisek[ ][ IRD_BE_AZ_ERTEKET ] =
{
{X, Y, Z, Elfordulási_szög},
{ },
{ },
{} // az utolsó után ne írj vesszõt!
};
public OnPlayerSpawn( playerid )
{
if(gTeam[playerid] == TEAM_MOTOROSOK) // team_motorosok helyére a saját variációd írd!
{
new iRandom = random(sizeof(KekRandomSpawn));
SetPlayerPos(playerid, KekRandomSpawn[iRandom][0], KekRandomSpawn[iRandom][1],KekRandomSpawn[iRandom][2]);
SetPlayerFacingAngle(playerid, KekRandomSpawn[iRandom][3]);
}
else if(gTeam[playerid] == TEAM_REPCSISEK)
{
new iRandom = random(sizeof(PirosRandomSpawn));
SetPlayerPos(playerid, PirosRandomSpawn[iRandom][0], PirosRandomSpawn[iRandom][1],PirosRandomSpawn[iRandom][2]);
SetPlayerFacingAngle(playerid, PirosRandomSpawn[iRandom][3]);
}
Bocs az indentáció miatt. Ha erre gondoltál, akkor szivesen. ;D
E: Knight: Helyes ;D
-
huh.. köszz de lenne egy problémám :S!!
D:\\PROGRA~1\\ROCKST~1\\SZERVE~1\\NORMAN~1.PWN(177) : error 017: undefined symbol \"KekRandomSpawn\"
D:\\PROGRA~1\\ROCKST~1\\SZERVE~1\\NORMAN~1.PWN(177) : error 029: invalid expression, assumed zero
D:\\PROGRA~1\\ROCKST~1\\SZERVE~1\\NORMAN~1.PWN(177) : warning 215: expression has no effect
D:\\PROGRA~1\\ROCKST~1\\SZERVE~1\\NORMAN~1.PWN(178) : error 017: undefined symbol \"KekRandomSpawn\"
D:\\PROGRA~1\\ROCKST~1\\SZERVE~1\\NORMAN~1.PWN(178) : warning 215: expression has no effect
D:\\PROGRA~1\\ROCKST~1\\SZERVE~1\\NORMAN~1.PWN(178) : error 001: expected token: \";\", but found \"]\"
D:\\PROGRA~1\\ROCKST~1\\SZERVE~1\\NORMAN~1.PWN(178) : error 029: invalid expression, assumed zero
D:\\PROGRA~1\\ROCKST~1\\SZERVE~1\\NORMAN~1.PWN(178) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
6 Errors.
177 Sor:
new iRandom = random(sizeof(KekRandomSpawn));
178 Sor:
SetPlayerPos(playerid, KekRandomSpawn[iRandom][0], KekRandomSpawn[iRandom][1],KekRandomSpawn[iRandom][2]);
-
MSN -en felveszlek és leírom, ha így jó neked. :)
-
nem müxik msnem :S Xfire?
public OnPlayerSpawn(playerid)
{
SetPlayerToTeamColour(playerid);
switch (gPlayerClass[playerid])
{
case 0:
{
if(gTeam[playerid] == TEAM_ATTACK) // team_attack helyére a saját variációd írd!
{
new iRandom = random(sizeof(Tamadok));
SetPlayerPos(playerid, Tamadok[iRandom][0], Tamadok[iRandom][1],Tamadok[iRandom][2]);
SetPlayerFacingAngle(playerid, Tamadok[iRandom][3]);
}
gPlayerCheckpointStatus[playerid] = CHECKPOINT_PLANE;
SetPlayerCheckpoint(playerid,268.6538,1883.4027,-30.5301,181.5421);
SetPlayerInterior(playerid,0);
SendClientMessage(playerid, COLOR_RED, \"[Ha Segítségre Lenne Szükséged Akkor /help]\");
GameTextForPlayer(playerid, \"Ir€ny a ~r~ bazis!/n~g~GPS-be Koordinatak Betaplalva!\", 2000, 5);
}
case 1, 2:
{
if(gTeam[playerid] == TEAM_DEFENCE)
{
new iRandom = random(sizeof(Vedok));
SetPlayerPos(playerid, Vedok[iRandom][0], Vedok[iRandom][1],Vedok[iRandom][2]);
SetPlayerFacingAngle(playerid, Vedok[iRandom][3]);
}
gPlayerCheckpointStatus[playerid] = CHECKPOINT_NONE;
GameTextForPlayer(playerid, \"~p~VÜdd meg a b€zist!\", 2000, 5);
SendClientMessage(playerid, COLOR_RED, \"[Ha Segítségre Lenne Szükséged Akkor /help]\");
SetPlayerInterior(playerid,0);
}
}
return 1;
}
}
-
Script formájában adom neked, de szerintem ki tudod szedni a lényeget.
Megjegyzés: A kordinátákat VÁLTOZTASD!!
#include <a_samp>
new gTeam[MAX_PLAYERS];
#define TEAM_MOTOROSOK 0
#define TEAM_REPCSISEK 1
public OnFilterScriptInit()
{
return 1;
}
public OnFilterScriptExit()
{
return 1;
}
new Float:Motorosok[ ][ 4 ] =
{
{10.10,10.10,10.10},
{10.10,10.10,10.10},
{10.10,10.10,10.10},
{10.10,10.10,10.10}
};
new Float:Repcsisek[ ][ 4 ] =
{
{10.10,10.10,10.10},
{10.10,10.10,10.10},
{10.10,10.10,10.10},
{10.10,10.10,10.10}
};
public OnPlayerSpawn( playerid )
{
if(gTeam[playerid] == TEAM_MOTOROSOK)
{
new iRandom = random(sizeof(Motorosok));
SetPlayerPos(playerid, Motorosok[iRandom][0], Motorosok[iRandom][1],Motorosok[iRandom][2]);
SetPlayerFacingAngle(playerid, Motorosok[iRandom][3]);
}
else if(gTeam[playerid] == TEAM_REPCSISEK)
{
new iRandom = random(sizeof(Repcsisek));
SetPlayerPos(playerid, Repcsisek[iRandom][0], Repcsisek[iRandom][1],Repcsisek[iRandom][2]);
SetPlayerFacingAngle(playerid, Repcsisek[iRandom][3]);
}
return 1;
}
-
Keresni nem szégyen. ;) Már egyszer volt egy ilyen probléma, és meg lett oldva, szóval így biztos jó:
http://samp-forum.extra.hu/index.php?topic=2282.0
ZeRo
-
váá srácok ez volt nekemis a gond pont akartam kezdeni egy témát, de ahogy ZeRo mondta \" keresni nem szégyen \" :)