Ich hab noch mal den Code durchgeschaut.
Mir ist "PlayerCar" ins Auge gestochen. Wann genau wird diese Variable auf 1 gesetzt?
Vielleicht diese Variable bei "/veh" einbinden?
Beiträge von ceL
-
-
Du kannst auch keine Variable setzen/verändern, wenn keine existiert.
Einfach unter Die CreateVehicle Funktion in "/veh" Motor[car] = false;.
Ich vermute mal, das unter OnGameModeInit der Motor für alle Fahrzeuge auf false gesetzt wird. Jedoch spawnst du das Vehicle ja danach. -
Weil der Bot keinen Demage kriegt...
-
Ich bin momentan leider im Urlaub, kann also nichts überprüfen...sry
-
public OnGameModeInit()
{
ShowPlayerMarkers(0);
}public OnPlayerSpawn(playerid)
{
if(Spieler[playerid][Team] != 0)
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(Spieler[i][Team] == Spieler[playerid][Team])
{
SetPlayerMarkerForPlayer(playerid, i, teamfarbe);
SetPlayerMarkerForPlayer(i, playerid, teamfarbe);
}
}
}
} -
-
Sry wegen dem playerid, hab das aber schon vor Minuten durch "i" ersetzt. playerid -> i
Hast du IsPlayeryinArea denn definiert?
stock IsPlayerInArea(playerid,Float:minX,Float:minY,Float:maxX,Float:maxY)
{
new Float:pX,Float:pY,Float:pZ;
GetPlayerPos(playerid,pX,pY,pZ);
if(pX >= minX && pX <= maxX && pY >= minY && pY <= maxY) return 1;
else return 0;
}Noch dazu: NICHT EINFACH COPY PASTE!
Dein Team heisst glaub ich nicht aljihad. Füg die ID oder den Namen ein.
Benutz bitte deinen Kopf. -
Wenn mich nicht alles täuscht, dann nimmt der Bot ja keinen Schaden, sprich das Callback wird gar nicht erst "aufgerufen".
Du könntest es hiermit kachen:
http://forum.sa-mp.com/showthread.php?p=937824Oder, du probierst es mit einer nativen Funktion:
http://wiki.sa-mp.com/wiki/GetPlayerTargetPlayer -
Du musst ja überprüfen, ob der Spieler die Zone betritt. Der sollte sich aber im Normalfall bewegen ;o.
public OnGameModeInit()
{
for(new i = 0; i < MAX_PLAYERS; i++)
{
SetTimerEx("CheckZone", 1000, true, "d", i);
}
}
//http://wiki.sa-mp.com/wiki/SetTimerExforward CheckZone(playerid);
public CheckZone(playerid)
{
if(IsPlayerInArea(playerid, minX, minY, maxX, maxY))
{
if(GetPlayerTeam(playerid) == aljihad) return SendClientMessageToAll(farbe, "Ein Terrorist hält sich in der Zone auf!");
}
}Theoretisch könnte man das auch mit OnPlayerUpdate machen....
-
SetSpawnInfo(playerid...);
SpawnPlayer(playerid);Das wäre unteranderem eine Lösung. Außerdem wurde diese Frage schon öfters gestellt. (--> google):
[HILFE]Wie kann ich den Spawn button wegmachen ? -
if(GetPlayerTeam(playerid) == aJihad) Eine einfache Abfrage, ob das Team des Spielers, der oben definierten Variable gleicht.
Wenn du GetPlayerTeam verwendest, solltest du auch wissen wie es funktioniert.
http://wiki.sa-mp.com/wiki/GetPlayerTeam_DEif(!IsACop(playerid)) ist eine eigen erstellte Funktion.
Du solltest dich voelleicht ein bisschen ins Wiki einlesen. Oder, du liest gleich die pawn-lang.pdf .