Beiträge von hearteyy
-
-
Hey,
ich möchte, dass ein Spieler, wenn er in eine Fraktion invitet wird, in eine Skinauswahl mit bestimmten Skins geschickt wird. Wie mache ich das am Besten?
Bitte kommt nicht mit "Schaus dir im GF an", da ich das nicht übernehmen möchte.mfg
surrender -
-
-
- lol sry falsches Thema pls löschen -
-
Hallo Brotfischer,
ich habe mal dieses Kick Command ausgearbeitet. Mein Problem ist man kann trotzdem noch ohne Grund kicken, was ich nicht möchte Ich hoffe ihr könnt mir helfen:
if(strcmp(cmd, "/kick", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!tmp[0])return SendClientMessage(playerid, COLOR_GREY, "Verwendung: /kick [SpielerID] [Grund]");
if (PlayerInfo[playerid][pAdmin] >= 2)
{
new giveplayer;
giveplayer = strval(tmp);if(!IsPlayerConnected(giveplayer))
{
SendClientMessage(playerid,COLOR_GREY,"* Dieser Spieler ist Offline!");
return 1;
}
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!tmp[0])return SendClientMessage(playerid, COLOR_GREY, "Verwendung: /kick [SpielerID] [Grund]");
format(string,256,"%s (ID:%d) wurde von %s gekickt. Grund: %s",pName[giveplayer],giveplayer,pName[playerid],(result));
SendClientMessageToAll(COLOR_LIGHTRED,string);
Kick(giveplayer);
}
else
{
SendClientMessage(playerid, COLOR_GREY, "Dir fehlt das benötigte Adminlevel!");
}
}
return 1;
}Dann möchte ich ein Command erstellen, welches für Admins bis Level 5 nur mit AdminDuty geht, und ab Level 6 ohne.
Könnt ihr mir den Anfang posten?
Variablen sind so definiert: pAdmin AdminDutymfg
surrender -
Das funktioniert bei mir einwandfrei:
if(strcmp(cmd, "/ooc", true) == 0 || strcmp(cmd, "/o", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(gPlayerLogged[playerid] == 0)
{
SendClientMessage(playerid, COLOR_GREY, " Du bist noch nicht eingeloggt!");
return 1;
}
if ((noooc) && PlayerInfo[playerid][pAdmin] < 1)
{
SendClientMessage(playerid, COLOR_GRAD2, " Der OOC chat wurde von einem Admin geschlossen");
return 1;
}
if(PlayerInfo[playerid][pMuted] == 1)
{
SendClientMessage(playerid, TEAM_CYAN_COLOR, " Du kannst nicht sprechen da du gemutet bist !");
return 1;
}
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "Benutze: (/o)oc [ooc chat]");
return 1;
}
new drank[20];
if(PlayerInfo[playerid][pAdmin] == 1){drank = "Moderator";}
else if(PlayerInfo[playerid][pAdmin] == 2) { drank = "Admin";}
else if(PlayerInfo[playerid][pAdmin] == 3) { drank = "Admin";}
else if(PlayerInfo[playerid][pAdmin] == 4) { drank = "Admin";}
else if(PlayerInfo[playerid][pAdmin] >= 1337) { drank = "1337-Admin,";}
else if(PlayerInfo[playerid][pAdmin] == 1338) { drank = "Co Projektleiter,";}
else if(PlayerInfo[playerid][pAdmin] == 1339) { drank = "Projektleiter,";}
format(string, sizeof(string), "((%s, %s: %s ))",drank, sendername, result);
if(PlayerInfo[playerid][pAdmin] == 1){OOCOff(COLOR_RED, string);}
else if(PlayerInfo[playerid][pAdmin] == 2) { OOCOff(COLOR_DBLUE, string);}
else if(PlayerInfo[playerid][pAdmin] == 3) { OOCOff(COLOR_YELLOW, string);}
else if(PlayerInfo[playerid][pAdmin] == 4) { OOCOff(COLOR_LYELLOW2, string);}
else if(PlayerInfo[playerid][pAdmin] == 1337) { OOCOff(COLOR_LIGHTRED, string);}
else if(PlayerInfo[playerid][pAdmin] == 1338) { OOCOff(TEAM_BALLAS_COLOR, string);}
else if(PlayerInfo[playerid][pAdmin] == 1339) { OOCOff(COLOR_GREY, string);}
printf("%s", string);
}
return 1;
} -
-
Wurde schon angesprochen und behoben...gestern...
-
Oh man Paddy ich bin so dumm, ich hatte gerade deswegen nen Lachkrampf xDD
Kann mir jemand nen Timer dafür machen, der ab dem Zeitpunkt gilt, die der Spieler bei der Telefonzelle ist?//EDIT
Hat wer noch ne Idee für den FirstSpawn? -
SetTimerEx ist ungültig. Wolltest du nur SetTimer machen oder SetTimerEx und was vergessen? xD
Nach euren Varianten bekommt der Spieler nach dem Register aber keine 500$ und ist nicht an dem Punkt.
Jetzt sieht man zwar die Spieler, aber sie bewegen sich nicht.. -
Nein ich habe nix bekommen aber nichts von dem Code funktioniert
-
Muss ich das Virtual World rausnhemen Julian?
-
Hallo ich bins schon wieder..^^
Ich wollte etwas erstellen, damit der Player beim ersten Login (also nach dem Register) eine Meldung + Geld erhält und am Airport spawnt.
Allerdings kommt es zu schweren Bugs, zB. werden die $500 immer wieder vergeben oder schlimmer - die Spieler können sich gegenseitig nicht mehr sehen!
So habe ich es gemacht:new FirstSpawn[MAX_PLAYERS];
public OnPlayerSpawn(playerid)
{
. . .if(FirstSpawn[playerid] == 1)
{
SetPlayerVirtualWorld(playerid, 0);
SetPlayerInterior(playerid, 0);
SetPlayerPos(playerid, 1446.4323,-2287.0105,13.5469);
SetPlayerFacingAngle(playerid, 90.0);
SetCameraBehindPlayer(playerid);
SetPlayerVirtualWorld(playerid, 0);
SetPlayerInterior(playerid, 0);
SendClientMessage(playerid, grün, "Als kleine Starthilfe hast du $500 bekommen.");
SendClientMessage(playerid, grün, "Viel Spaß auf dem Server!");
GivePlayerMoney(playerid, 500);
FirstSpawn[playerid] = 0;
}...
if (strcmp(cmd, "/register", true)==0)
{
. . .
FirstSpawn[playerid] = 0;Dann wollte ich noch eine Nachricht einfügen, dass wenn jemand an einer Telefonzelle ist, dann eine Nachricht erscheint. Allerdings kommt keine
Mein Code:forward IsAtTankstelle();
public OnGameModeInit()
{
. . .
SetTimer("IsAtTankstelle", 500, 1);
. . .public IsAtTelefonzelle()
{
for(new playerid=0; playerid<GetMaxPlayers(); playerid++)
{
if(PlayerToPoint(1, playerid, 1450.1318,-2283.4863,13.5469))
{
SendClientMessage(playerid, grau, "Du bist an einer Telefonzelle.");
SendClientMessage(playerid, grau, "Von hier aus kannst du bald andere Leute anrufen.");
return 1;
}
}
return 1;
}Ich habe jetz wirklich lange an diesen Problemen gesessen..
mfg
surrender -
Danke funzt wunderbar.
-
Ja stimmt habs rausgenommen, aber der Fehler ist immer noch da..
-
Ich habe in meinem NO-GF etwas eingefügt, dass den Player nach dem Tot beim Krankenhaus spawnen lässt. Es ist von Sampi hier aus dem Forum. Allerdings spawnt der Player nur im Krankenhaus, wenn er in einem Fahrzeug sitzt, keine Ahnung warum. Wenn er zu Fuß ist, spawnt er mit der Meldung einfach wieder am normalen Spawn. Pls help..
forward Krankenhausspawn(playerid);public Krankenhausspawn(playerid)
{
SetPlayerHealth(playerid,100.0);
SetPlayerPos(playerid, 1182.3021,-1324.0919,13.5798); //Krankenhaus
SendClientMessage(playerid, rot, "Nach deiner schweren Verletzung wurdest du zum Krankenhaus gebracht und verarztet.");
SendClientMessage(playerid, rot, "Da du keine Versicherung hast musst du die Kosten selber tragen. ($20)");
GivePlayerMoney(playerid, -20);
return 1;
}public OnPlayerDeath(playerid, killerid, reason)
{
TextDrawHideForPlayer(playerid, Speedometer[playerid]);
new Float:Health;
GetPlayerHealth(playerid, Health);
if(Health == 0.0)
{
PlayerInfo[playerid][Tode] += 1;
SetTimerEx("Krankenhausspawn",2000,0,"d",playerid);
TogglePlayerControllable(playerid, 0);
}
PlayerInfo[killerid][Morde] = PlayerInfo[killerid][Morde] + 1;
return 1;
} -
Echt nice kann man gut gebrauchen!
-
In den Tuts um Fraktionen für GF zu erstellen muss man ja an was anknüpfen. Das habe ich nicht, also ichmöchte wissen, was ich alles brauch um ne Fraktion wie in GF zu erstellen.
-
Hallo Brotfische,
da ich das Fraktionssystem vom GF gut finde (und gTeam net checke :D), möchte ich es in meinen GameMode einbauen. Allerdings weiß ich nicht, was ich alles definieren muss/welche Variablen ich brauche.
Kann mir da jemand helfen?mfg
surrender