Ich habe es bei meinem kickcmd so
forward KickLog(string[]);
format(string, sizeof(string), "[Server] %s wurde von %s gekickt. Grund: %s ", name, aname, Grund);
KickLog(string);
public KickLog(string[])
{
new entry[256];
format(entry, sizeof(entry), "%s\n",string);
new File:hFile;
hFile = fopen("/Logs/kick.log", io_append);
fwrite(hFile, entry);
fclose(hFile);
}
Beiträge von Ryan_Crawley
-
-
SpawnPlayer(playerid) unter public OnPlayerRequestClass oder public OnPlayerLogin denn bei LoadAccount läd er ja nur die Acc daten.
-
denke so müsste es gehen
public OnPlayerSpawn(playerid)
{
if(GetPVarInt(playerid,"Fraktion") == 1)
{
SetPlayerPos(playerid,X,Y,Z);
SetPlayerInterior(playerid,Interior);
SetPlayerSkin(playerid,skinid);
GivePlayerWeapon(playerid,WeaponID,Ammo);
}
else if(GetPVarInt(playerid,"Fraktion") == 2)
{
SetPlayerPos(playerid,X,Y,Z);
SetPlayerInterior(playerid,Interior);
SetPlayerSkin(playerid,skinid);
GivePlayerWeapon(playerid,WeaponID,Ammo);
}
return 1;
} -
GameTextForPlayer(playerid, "~w~Willkommen,~n~~r~/atmwithdraw ~n~ /atmbank", 5000, 5); // das i durch playerid ersetzen, du willst den Gametext ja der Playerid zeigen, der am Atm ist.
-
Es hat kein Sinn wenn wir es euch schon fast fertig machen und ihr könnt es nichtmal einfügen. Ihr wollt auch verstehen warum und wie was gemacht wird. Bis vor gut einem halben Monat habe ich ein GF editiert und bastele nun an meinem Selfmade. Angefangen habe ich vor ca 7 Monaten mit dem Scripten und wenn man dranbleibt lernt man es relativ schnell. Dabei bringt es einem nichts, wenn man nur Copy&Past betreibt.
-
Kannst du Scripten oder hast du dir nur ein Godfather gedownloadet und en Server aufgemacht? Wäre erstmal besser wenn du die Basics lernst und dann versuchst einen Server zu scripten.
-
Mhm das ist wie bei Ebay. Dort darf man keine Acc von MMORPGs verkaufen. Also verkauft man screens und bekommt Gratis die Accdaten dazu. Ob das nich Aktuell ist weiß ich nicht aber kann man es so machen, das man es Spenden nennt und nicht als gegenleistung, sondern als Danke Premium erhält. Oder das man Premium erhält und wenn jmd fragt, wurde er halt "zufällig" ausgewählt etc. Ich weiß nicht genau wie die Sachlage dort aussieht, aber bei den minimalen Beträgen wird es bestimmt nicht so "hart" ausfallen.
-
Du musst wenn die neue Baustelle aufgebaut wird die alte mit DestroyDynamicObjects oder so wieder wegmachen.
-
Naja so wie du dich gibts wird dir keiner Helfen.
-
Sowie ich das sehe baust du den Befehl in ein Godfather ein? Da ist es bissl schwerer es zu erklären.
-
public OnPlayerCommandText(bla)
{
dcmd(givepoints,10,cmdtext);
return 0;
}Und den Command musst du unten in dein Script einfügen
-
Errors, Warnings? Hast du den dcmd richtig eingefügt und auch dcmd(givepoints,10,cmdtext); ansonsten teste ich den Morgen auf meinem Selfmade und geb dir dann bescheid
-
klappt denn der /givepoints CMD? Wie gesagt bei deinem /checkpoint kann ich dir niocht helfen
-
Bei dem Checkpoint kann ich dir so genau leider nicht helfen. Bin selber nur "Anfänger"
-
ungetestet und ausbaufähig aber der Grundbau ohne Grundangabe steht schonmal. Hoffe es klappt
dcmd_givepoints(playerid,params[])
{
if(PlayerInfo[playerid][Fraktion] != 1) //ersetzen durch deine Fraktionsabfrage
{
return SendClientMessage(playerid,COLOR_GRAD2,"Du bist kein Cop");
}
if(sscanf(params, "ud", pID, Points))
{
return SendClientMessage(playerid,COLOR_GRAD2,"Benutzung: /givepoints [Playerid] [Punkte]");
}
if(!IsPlayerConnected(pID))
{
return SendClientMessage(playerid,COLOR_GRAD2,"Kein Spieler mit angegebener ID Online");
}
else
{
if(PlayerInfo[playerid][Fraktion] == PlayerInfo[pID][Fraktion])
{
return SendClientMessage(playerid,COLOR_GRAD2,"Du kannst einem Cop keine Punkte gegen");
}
else
{
new CopName[MAX_PLAYER_NAME], string2[256];
GetPlayerName(playerid, CopNamee, sizeof(aname));
format(string2, sizeof(string2), "%s hat dir %d Punkte gegeben.", CopName, Points);
SendClientMessage(pID, COLOR_RED, string2);
new Name[MAX_PLAYER_NAME], string2[256];
GetPlayerName(playerid, CopNamee, sizeof(aname));
format(string2, sizeof(string), "Du hast %s %d Punkte gegeben.", Name, Points);
SendClientMessage(pID, COLOR_RED, string);
PlayerInfo[pID][Points] = Points; //Die neue Variable musst du in deinem Enum angeben und speichern/laden
}
}
return 1;
}Meine erste Selfmade hilfe
Edit: Vllt der ein oder andere Warning weil ich statt == nur = oder != gemacht habe aber die Warnings/Errors müsstest du ja raus hauen können
-
hast du denn "setplayerpos" oder SetPlayerPos. Was hast du denn schon in der richtung, hast du dabei Errors?
-
Ich nehme an ihm gehts auch um den Spawn Etc. aber das bekommt man ja mit SetPlayerPos hin. Also es gibt schon die ein oder andere Idee
Edit: Zudem will er mehrere Skins für eine Variable zur Auswahl stellen. Da würde es mit SetPlayerSkin etwas umständlich werden oder sehe ich das falsch?
-
Und wenn man alle Skins mit dazugehörigem Spawn und Waffen unter public OnGameModeInti savet und unter public OnPlayerRequestClass mit switch und case arbeitet? Ist nur mal so ne Idee
-
denke mal in etwa so
public OnPlayerRequestClass(playerid, classid)
{
if(PlayerInfo[playerid][Variable] == 1)
{
AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
}
else if(PlayerInfo[playerid][Variable] == 2)
{
AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
}
else if(PlayerInfo[playerid][Variable] == 3)
{
AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
}
return 1;
}Bin jetzt nicht der beste Scripter und es ist ungetestet aber wenn ich das machen würde dann so
if(PlayerInfo[playerid][Variable] == 3)Musst du an deine jeweilige Abfrage anpassen.
-
Und das Danke ging an Maddin und nicht an dich