Beiträge von M4rciii
-
-
new newcar = GetPlayerVehicleID(playerid);
new newcarstr[3];
format(newcarstr,sizeof(newcarstr),"%d",newcar);
new inistr = dini_Int("Autohaus.ini", newcarstr);newcar ist eben ein Integer(Ganzzahl) und kein String, was hier benötigt wird
-
GetPlayerWantedLevel[playerid][pWanted]
Es gibt die Funktion GetPlayerWantedLevel(playerid), aber was du da machst, weis ich nich. Probiers mal so:
PlayerInfo[playerid][pWanted] = GetPlayerWantedLevel(playerid);
dini_IntSet(fname,"Wanted",PlayerInfo[playerid][pWanted]);
Oder so gehts auch:
dini_IntSet(fname,"Wanted",GetPlayerWantedLevel(playerid)); -
Mit GetPlayerWeaponData für Slot 0-12 abspeichern und dann wieder beim connecten laden
-
} else { // das is dafür, damit ihr das object mit dem gleichen befehl löschen könnt
Lol, nein.
Das else ist auf das if(strcmp(cmd, "/meinBefehl", true) == 0) bezogen, somit wird das Objekte jedes mal gelöscht, wenn man einen anderen Befehl als /meinBefehl eingibt. -
Lol, ich denke er meint per Script
Naja, fwrite(datei,modus); ... und etwas wird gespeichert
Hier Link zu Wiki
Hier Link zu Dini-Tut -
Jetzt hast du das Problem, das playerid benutzt wird, aber es nicht existiert.
Falls du willst, das jeder das bekommen soll machs so:
public SAPD()
{
for(new i=0; i<GetMaxPlayers(); i++)
{
if(IsPlayerConnected(i))
{
GivePlayerMoney(i,1000);
}
}
}
Und falls es zum Beispiel verschiedene Gehälter sein sollen:
public SAPD()
{
for(new i=0; i<GetMaxPlayers(); i++)
{
if(IsPlayerConnected(i))
{
if(IsACop(i)) // wie du es eben definiert hast
{
GivePlayerMoney(i,1000);
}
if(IsAGroveMember(i)) // wie du es eben definiert hast
{
GivePlayerMoney(i,5000);
}
}
}
} -
Heute inner Schule hatte einer sich voll aufgeregt, weil sein Youtube während der "Recherche" nicht so ganz ging
-
Ja, die { wurde als falsch empfunden, weil keine Bedingung oder "Funktionskopf"(function header) davor steht.
Und public SAPD(); es eben nicht ist, wegen dem ;
Also mach einfach war er dir sagt, es ist richtig! -
if(GetPlayerMoney(playerid) < SET_THE_SPAWN_MONEY) SetPlayerMoney(playerid, SET_THE_SPAWN_MONEY);
Nicht jeder hat SetPlayerMoney ^^, aber gute Idee! -
wenn dann: Kick(badname);
Das würde die Datei Kicken????@ Flo: Mach doch:
if(!strcmp(string,PlayerName(playerid),true)) -
if(strcmp(string,badname,true))
An dieser Stelle überprüfst du, ob die Datei und der Name nicht übereinstimmen ????
Mach daraus:
if(!strcmp(string,PlayerName(playerid),true)) -
ersetzte playerid durch i und bau PlayerToPoint ein:
forward PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z);
public PlayerToPoint(Float:radi, playerid, Float:x, Float:y, Float:z)
{
if(IsPlayerConnected(playerid))
{
new Float:oldposx, Float:oldposy, Float:oldposz;
new Float:tempposx, Float:tempposy, Float:tempposz;
GetPlayerPos(playerid, oldposx, oldposy, oldposz);
tempposx = (oldposx -x);
tempposy = (oldposy -y);
tempposz = (oldposz -z);
//printf("DEBUG: X:%f Y:%f Z:%f",posx,posy,posz);
if (((tempposx < radi) && (tempposx > -radi)) && ((tempposy < radi) && (tempposy > -radi)) && ((tempposz < radi) && (tempposz > -radi)))
{
return 1;
}
}
return 0;
} -
Das ist eine Include und somit im Serverordner unter /pawno/includes/
Am besten die Includes nochmal neu laden, falls es nicht drin ist -.-" -
Habs mir mal angeschaut.
Die Zeile zu löschen würde zwar gehen, aber die Autos sind dann nur nach dem joinen des Besitzers immer da.
Also wird das Auto dastehn, wenn der Besitzer seit dem letzen Restart online war. Aber wäre ne Lösung -
Diese Warning kommt normalerweise, wenn zu dem was nach public kommt das forward fehlt. (Oder es eben falsch geschrieben wurde)
Ober das hier ist richtig geschrieben...
Das einzige ist vllt, dass du kein forward OnRconCommand(cmd[]); in deiner a_samp.inc hast, was aber Standard drinne ist. -
Also, du bausts so ein, wie ichs dir erkläre:
bei den forwards:
forward Areacheck();bei OnGameModeInit()
SetTimer("AreaCheck",5000,1);Irgwo im Script:
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;
return 0;
}
public Areacheck()
{
for(new i = 0; i<GetMaxPlayers(); i++)
{
if( IsPlayerConnected(i) && IsPlayerInArea(playerid, 1.Speichern-X , 1.Speichern-Y , 2.Speichern-X , 2.Speichern-Y ) )
{
new Float:phealth;
GetPlayerHealth(playerid,phealth);
SetPlayerHealth(playerid,health-3);
}
}
}Hier der Syntax von IsPlayerInArea:
IsPlayerInArea(playerid,minX,minY,maxX,maxY)
Du musst 2mal Koordinaten speichern, einmal unten links und einmal oben rechts des Bereiches und benötigst die X und Y Werte. Wenn du die Koordinaten einfügst sollte es so aussehen:
IsPlayerInArea(playerid, 1.Speichern-X , 1.Speichern-Y , 2.Speichern-X , 2.Speichern-Y )Also, hoffe es funktioniert bei dir
-
Wegen der neuen Domain ...
Breadfish kann nicht alle seine Beiträge mit der richtigen URL korregieren, könnte länger dauern.
Hier der Link zum neuen WIKI -
Mal eine Frage:
Das grüne Symbol unten rechts ist von meinem WLAN. Findet ihr auch das sieht aus wie ein männliches Geschlechtsteil???? oÔ -
warning 217: loose indentation weist dich darauf hin, dass du es richtig einrücken musst.
Schieb die Zeilen einfach auf gleiche Höhe wie die anderen.
PS: Oben nochmals den Download geändert wegen dem SetPlayerInterior