Lösch die define zeile, lade dir von samp.com den Windows Server mit den neusten Includes runter, pack die in dne Pawno Ordner, kompiliere nochmal, dann sollte es gehen.
//Edit
Und mach das was Brot gepostet hat!
Lösch die define zeile, lade dir von samp.com den Windows Server mit den neusten Includes runter, pack die in dne Pawno Ordner, kompiliere nochmal, dann sollte es gehen.
//Edit
Und mach das was Brot gepostet hat!
Warnings sind immer schlimm und sollten immer behoben werden, wer was anderes meint hat einfach keine Ahnung ![]()
@Thread versuchs mal so
new Float:pCHealth;
GetPlayerHealth(playerid,pCHealth);
dini_FloatSet(accFormat,"Heal",pCHealth);
Von was willst du die VehicleID denn hohlen?
Wenn der User z.B. Schlüssel hat dann musst du in den Schlüsseln die vehicleid reinschreiben.
Also beim erstellen des Fahrzeugs z.B.
new carid = CreateVehicle(...)
CarKey[0][playerid] = carid;
0 Steht dann für den ersten schlüssel, und bei /carlist kannst du die dann ausgeben:
format(...,"Auto 1:%d Auto 2:%d",CarKey[0][playerid],CarKey[1][playerid]);
Dann kannst du im /findcar auch einfach nach 0 und 1 suchen:
GetVehiclePos(CarKey[vehid][playerid],x,y,z);
Wobei vehid hier halt der sscanf Parameter ist.
Poste einfach mal den ganzen zusammenhängenden Code...
Jo die VehicleID, also die Nummer die es bekommt wenn es erstellt wird.
Kann man mit /dl erfahren aber für die User würde ich es nach Schlüssel oder sowas umbaue, sonst kann man jedes Fahrzeug markieren.
ttext ist ein String, du versuchst aber soweit ich das sehe einen anderen string zuzuweisen, das funktioniert nicht weil einer der beiden wohl größer ist.
if(leader != 0) strmid(ttext,Fracs[leader-1],0,strlen(Fracs[leader-1]));
if(member != 0) strmid(ttext,Fracs[member-1],0,strlen(Fracs[member-1]));
Sollte so gehen, das kopiert den Text dann anständig von der einen Variable nach ttext, sollte strlen nicht gehen nimm sizeof, bin mir da jetzt nicht sicher.
http://wiki.sa-mp.com/wiki/GetPlayerHealth
Hat 2 Parameter und:
ZitatThe function itself doesn't return a specific value.
new Float:Health;
GetPlayerHealth(playerid,Health);
dini_FloatSet(accFormat,"Heal",Health);
Statt IntSet würde ich dann auch so wie hier FloatSet nehmen ![]()
Interessant ich dachte >> und << heißen "deutlich kleiner als" bzw. "deutlich größer als" ![]()
Hab mich dann mal schlau gemacht und ist nicht so xD
Bzw @ BlackAce
<<=
Ist das selbe wie z.B.
x = x << y
ocmd:findcar(playerid,params[])
{
new Float: x, Float: y, Float: z, vehid;
if(sscanf(params,"i",vehid))return SendClientMessage(playerid,farbe,"/findcar ID");
GetVehiclePos(vehid,x,y,z);
SetPlayerCheckpoint(playerid, x, y, z,4.0);
return 1;
}
Der dritte Parameter bei sscanf sind immer die Variabel in denen etwas gespeichert werden soll, in diesem fall nutzt du i also einen Integer zahlen wert, habe in der zeile noch vehid erstellt.
Was ja ein Integer ist. Die Syntax von GetVehiclePos war nicht Richtig, die Funktion hat 4 Parameter und nicht nur einen, wenn du die Parameter nicht weißt kannst du die Funktion immer in der Wiki suchen. http://wiki.sa-mp.com/
Achja und CreatePlayerCheckpoint gibt es nicht ![]()
Schreib es dir auf und dann machste die Abfragen einfach
if(GetPVarInt(playerid,"Beruf") == 1) //Wenn er bauer ist
//oder z.B.
if(GetPVarInt(playerid,"Beruf") == 2)//Wenn er Cop ist etc.
//Denn die Funktion würde lauten
stock isPlayerAnBauer(playerid,rang)
{
if(GetPVarInt(playerid,"Beruf") == 1) return 1;
return 0;
}
//Statt 1 halt die Nummer die du willst, und dann kannste es auch direkt mit einer Abfrage machen...
public OnPlayerDeath(playerid, killerid, reason)
{
SendDeathMessage(killerid, playerid, reason);
IsPlayerDeath[playerid] = 1;
if(killerid != INVALID_PLAYER_ID)//Wenn es keinen killer gibt bleibt es auf invalid_player_id
{
SendClientMessage(killerid,0xFFFF00FF,"du hast für den Kill 2500$ bekommen!");
GivePlayerMoney(killerid,2500);
DeathID[playerid] = killerid;
return 1;
}
return 1;
}
public OnPlayerSpawn(playerid)
{
PlayerPlaySound(playerid, 1186, 1326.1104,-877.1648, 10.0 );
SetPlayerTeam(playerid,gTeam[playerid]);
if(IsPlayerDeath[playerid] == 1)
{
if(DeathID[playerid] != INVALID_PLAYER_ID)
{
SetTimerEx("DeathWait", 10000, 0, "%i", playerid);
TogglePlayerSpectating(playerid, 1);
PlayerSpectatePlayer(playerid, DeathID[playerid]);
}
else
{
SetTimerEx("DeathWait", 10000, 0, "%i", playerid);
//hier müsstest du ihn freezen oder sowas
}
}
return 1;
}
1. Heißt es kompilieren
2. Hat Pawno eine Undo funktion, wenn du den Editor aber zwischenzeitlich geschlossen hast geht das nicht.
Eigentlich heißt es auf Deutsch kompilieren.
[ GAMEMODE ] für Anfänger V 2.0.1 released
[ GAMEMODE ] Starthilfe mit erklärung(Anfängergamemode)
[ GAMEMODE ] Anfänger Release
Nein, das kommt dadurch das du viele große Arrays benutzt. Es gibt aber auch kleine Tricks wie du die amx kleiner pushen kannst, ein sehr wirkungsvoller ist:
//Direkt unter der a_samp include
#undef MAX_PLAYERS
#define MAX_PLAYERS 100
//Edit
So laufen schleifen mit MAX_PLAYERS nicht 500 sondern nur 100 mal durch, auch MAX_PLAYER Variabeln werden auf 100 reduziert, das ist ein enormer Speicher Vorteil und macht später mehrere mb aus.
//Edit
Undef und nicht Undefine ![]()
Die alte amx muss durch die neu erstellte ersetzt werden, der Server muss danach neu gestartet werden.
Erst dann werden änderungen wirksam.
//Edit
Bzw. Pflichte ich den anderen bei, solche Riesigen Scripte sind nichts für Anfänger...
Ich frage mich wie man überhaupt auf so eine Idee kommt, sieht es bei dir anders aus? Wohl kaum oder?
Du weißt schon das das Video bearbeitet ist und der Button dadurch Heller oder so wirkt?
Das X zum Nachladen? Mir wärs neu das es anders aussieht wenn man mit Elite nachlädt als wie ohne...
jeder kennt warscheinlich den berühmten Trickshot Clan
Öh ne?
Was willste denn an dem Knopf ändern? Da kannste nichts ändern...