Hast du bei ID nicht vergessen bei Auto Increment einen Haken zu machen ?
Oh, tatsächlich, ich schau mal nach ob es nun funktioniert =)
e: Vielen dank.
Hast du bei ID nicht vergessen bei Auto Increment einen Haken zu machen ?
Oh, tatsächlich, ich schau mal nach ob es nun funktioniert =)
e: Vielen dank.
Moin, ich hab mal versucht ein dynamisches Fraktionsauto-System zu schreiben, bzw. zu editieren.
Jedenfalls habe ich nun folgenden Fehlercode:
stock CFC(model,Float:fx,Float:fy,Float:fz,Float:fa,farbe,frak)
{
new query[256];
format(query, sizeof(query), "INSERT INTO `frakcar` (`Model`, `X`, `Y`, `Z`, `Angle`, `Fraktion`, `Farbe`) VALUES ('%d', '%f', '%f', '%f', '%f', '%d', '%d')", model, fx,fy,fz,fa,frak,farbe);
mysql_query(query);
CreateVehicle(model,fx,fy,fz,fa,farbe,farbe,-1);
return 1;
}
[Tue Dec 25 17:24:53 2012] Function: mysql_query executed: "INSERT INTO `frakcar` (`Model`, `X`, `Y`, `Z`, `Angle`, `Fraktion`, `Farbe`) VALUES ('560', '1069.615234', '-1767.204956', '13.365107', '32.774948', '1', '86')" with result: "1".
[Tue Dec 25 17:24:53 2012] Error (0): Failed to exeute query. Duplicate entry '0' for key 'PRIMARY'.
Die erste Spalte wird erstellt (sofern noch keine erstellt wurde).
Beste grüße,
OnPlayerSpawn(playerid)
{
TextDrawShowForPlayer(playerid, Textdraw0);
// usw.
}
So sollte das gehen.
Anders geht es nicht, also ja =)
Inwiefern möchtest du diese verbinden?
Raclette
new Float:Kills = GetPVarInt(playerid,"Kills");
new Float:Tode = GetPVarInt(playerid,"Tode");
new string[64];
format(string,64,"KD-Ratio: %0.1f",Kills/Tode);
So sollte das funktionieren.
Versuch mal
if(dini_Int("Datei","XYZ") == 1)
Wobei ich mir sicher bin das sowas eigentlich nicht gehen sollte
Nein, Cleo Godmode ist muss.
if(!IsPlayerInRangeOfPoint(playerid,X,Y,Z,RANGE)return SendClientMessage(playerid,FARBE,"Text");
new WeaponName[47][] =
{
"Keine Waffe", "Schlagring", "Golfschläger", "Schlagstock", "Messer", "Baseballschläger", "Schaufel", "Poolstock", "Katana", "Kettensäge", "Purple Dildo", "Kleiner weißer Vibrator", "Großer weißer Vibrator", "Silber Vibrator",
"Blumen", "Laufstock", "Granate", "Tränen Gas", "Molotov Cocktail", "Jetpack", "", "", "Colt 45", "Silenced Pistol", "Desert Eagle", "Shotgun", "Sawn-off Shotgun", "SPAS-12",
"Micro SMG", "MP5", "AK47", "M4A1", "Tec-9", "Country Rifle", "Sniper Rifle", "Rocket Launcher", "HS Rocket Launcher", "Flammenwerfer", "Minigun", "Kofferbombe", "Zünder", "Spraycan", "Feuer-Löscher",
"Camera", "Nightvision Goggles", "Thermal Goggles", "Parachute"
};
alias_ocmd:checkw=checkweapon(playerid,params[])
{
if(!IsPlayerAnAdmin(playerid,1))return SendClientMessage(playerid,COLOR_GREY," Du bist kein Admin.");
new pid;
if(sscanf(params,"u",pid))return SendClientMessage(playerid,COLOR_WHITE,"Benutze: /checkw(eapon) [Spieler]");
new weapons[13][2];
new string[64];
format(string,sizeof(string),"Waffen von [%d]%s:",pid,PlayerName(pid));
SendClientMessage(playerid,COLOR_GREY,string);
for(new i = 0; i < 13; i++)
{
GetPlayerWeaponData(pid, i, weapons[i][0], weapons[i][1]);
format(string,sizeof(string),"Slot %d: %s Munition:\t%d",i,WeaponName[weapons[i][0]],weapons[i][1]);
SendClientMessage(playerid,COLOR_GREY,string);
}
return 1;
}
Hi, ich würde gerne wissen, wie ich es machen kann, das bei /checkw, falls der Spieler die Waffe nicht hat (Keine Waffe), das ""Slot %d: %s Munition:\t%d"" nicht ausgeführt wird, also das da praktisch eine Leere Zeile ist.
Momentan sieht es so aus:
Ich hoffe es ist verständlich was ich meine
Gruß,
Teste einfach mal ingame:
Host_Framerate "500" (für Frags bspw jetzt).
Host_Framerate "1000" (für Smooths usw.)
Das ganze nimmste dann mit diesem einen Befehl auf, ich glaub startmovie "name" (kann laggen ist aber normal)^^
Die ganzen TGA datein ziehste in V-Dub rein, stellst die Framerate auf die, welche du benutzt hast im Spiel, also bei Frags bspw jetzt 500, bei Smooths bspw "1000".
Wenn du das alles so gemacht hast wie ich es dir gesagt hab, kanns evtl. an deiner Movie-CFG liegen.
Benutzte New oder Old-CSS?
Gruß,
Mein Gott, dann schreib's doch einfach continue; dahinter, ich wollt dir nur sagen wie das geht und mir nicht jeden scheiß durchlesen, selbstverständlich kann ich lesen.
public waffencheck(playerid)
{
//if(GetPVarInt(playerid,"admin") >= 1)continue;
//if(SpielerInfo[playerid][pAdmin] >= 1)continue;
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(GetPlayerWeapon(i) == 38)
{
if(IsPlayerInFrakt(i,0) || IsPlayerAnAdmin(i,0))
{
SendClientMessage(i,rot,"No Weapon Cheats!");
new playername[128];
new string[128];
new string2[128];
GetPlayerName(i,playername,128);
format(string, sizeof(string),"ANTICHEAT WARNING!: %s besitzt jetzt eine Minigun!",playername);
SendClientMessageToAdmins(rot,string);
format(string2, sizeof(string2),"ANTICHEAT SYSTEM: Kicked Player %s! Reason: Weapon Hack!",playername);
SendClientMessageToAll(rot,string2);
Kick(i);
SpielerSpeichern(i);
printf("Spieler %s wurde wegen der Waffe mit der ID [%d] gebannt!",playername,GetPlayerWeapon(i));
return 1;
}
return 1;
}
if(GetPlayerWeapon(i) == 35 || GetPlayerWeapon(i) == 36)
{
if(IsPlayerInFrakt(i,0) || IsPlayerAnAdmin(i,0))
{
SendClientMessage(i,rot,"No Weapon Cheats!");
new playername[128];
new string[128];
new string2[128];
GetPlayerName(i,playername,128);
format(string, sizeof(string),"ANTICHEAT WARNING!: %s besitzt jetzt einen Rocketlauncher!",playername);
SendClientMessageToAdmins(rot,string);
format(string2, sizeof(string2),"ANTICHEAT SYSTEM: Kicked Player %s! Reason: Weapon Hack!",playername);
SendClientMessageToAll(rot,string2);
Kick(i);
SpielerSpeichern(i);
printf("Spieler %s wurde wegen der Waffe mit der ID [%d] gebannt!",playername,GetPlayerWeapon(playerid));
return 1;
}
return 1;
}
}
return 1;
}
Alles anzeigen
Eins von den beiden ;D
new Hour, Minute, Second;
gettime(Hour, Minute, Second);
if(Minute == 0//also wenn die Minute 0(12:00:00 UHR) bspw, also was nur zu jeder vollen stunde ist
{
// restlicher Code
}
Ich schätze mal so kann es gehen.
Achso, das ganze sollte dann Natürlich ein Timer sein, der jede Sekunde ausgeführt wird.
Eher nicht so gut, naja sind auch noch 3 andere hier im Internet und halt W-Lan
Wären die nicht dran und hätte ich Kabel wären es so ca. 60 MB usw.
stock IstSpielerBeamter(playerid)
{
if(GetPVarInt(playerid,"Fraktion") == 1 || GetPvarInt(playerid,"Fraktion") == 2))// beispiel, ich würde anstatt den Namen lieber Zahlen nehmen :)
{
return true;
}
else
{
return false;
}
}
if(!IstSpielerBeamter(playerid))return SendClientMessage(playerid, Rot2, "Du bist dazu nicht !");
Der Code kann ein wenig falsch sein, evtl eine ")" vergessen, bin mir nicht sicher.
Gruß,
Also am besten machst du es so:
Du erstellst eine Variable, bspw. Skinid.
Skinid = dini_Get(Spielerdatei,"skin"); bzw. mysql oder welches Filesystem/Speichersystem du benutzt.
Nachdem du das geschafft hast, schreibst du unter OnPlayerRequestClass bzw unter deinem "Ladenstock":
SetSpawnInfo(playerid, team, Skinid, Float:x, Float:y, Float:z, Float:Angle, weapon1, weapon1_ammo, weapon2, weapon2_ammo, weapon3, weapon3_ammo);
SpawnPlayer(playerid);
Ich hoffe du kannst verstehen was ich meine
Gruß,