Wieso gibst du du denn Excuse als name an ?
Beiträge von Kasakow
-
-
stock SavePlayer(playerid)
{
if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid))
{
if(GetPVarInt(playerid,"Eingeloggt") == 1)
{
new query[800];
format(query, sizeof(query), "UPDATE `accounts` SET `Level` = '%d',`Adminlevel` = '%d',`Online` = '%d',`Datum` = '%s',`Geschlecht` = '%i',`Alter` = '%i',`Skin` = '%i',`Fraktion` = '%i',`Fraktionsrang` = '%i',`Leader` = '%i',`MuteZeit` = '%i',`Gemutet` = '%i' WHERE Name='%s'",
SpielerInfo[playerid][pLevel],SpielerInfo[playerid][pAdminlevel],SpielerInfo[playerid][pOnline],SpielerInfo[playerid][pDatum],SpielerInfo[playerid][pGeschlecht],SpielerInfo[playerid][pAlter],GetPlayerSkin(playerid),SpielerInfo[playerid][pFraktion],SpielerInfo[playerid][pFraktionsrang],SpielerInfo[playerid][pLeader],SpielerInfo[playerid][pMuteZeit],SpielerInfo[playerid][pGemutet],SpielerInfo[playerid][pName]);
format(query, sizeof(query), "UPDATE `accounts` SET `Gebannt` = '%i',`Ausfuehrender` = '%s',`Grund` = '%s' WHERE Name='%s'",
SpielerInfo[playerid][pGebannt],SpielerInfo[playerid][pAusfuehrender],SpielerInfo[playerid][pGrund],SpielerInfo[playerid][pName]);
mysql_query(query);
printf(query);
}
}
return 1;
}zu
stock SavePlayer(playerid)
{
if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid))
{
if(GetPVarInt(playerid,"Eingeloggt") == 1)
{
new query[800];
format(query, sizeof(query), "UPDATE `accounts` SET `Level` = '%d',`Adminlevel` = '%d',`Online` = '%d',`Datum` = '%s',`Geschlecht` = '%i',`Alter` = '%i',`Skin` = '%i',`Fraktion` = '%i',`Fraktionsrang` = '%i',`Leader` = '%i',`MuteZeit` = '%i',`Gemutet` = '%i' WHERE Name='%s'",
SpielerInfo[playerid][pLevel],SpielerInfo[playerid][pAdminlevel],SpielerInfo[playerid][pOnline],SpielerInfo[playerid][pDatum],SpielerInfo[playerid][pGeschlecht],SpielerInfo[playerid][pAlter],GetPlayerSkin(playerid),SpielerInfo[playerid][pFraktion],SpielerInfo[playerid][pFraktionsrang],SpielerInfo[playerid][pLeader],SpielerInfo[playerid][pMuteZeit],SpielerInfo[playerid][pGemutet],SpielerInfo[playerid][pName]);
mysql_query(query);
format(query, sizeof(query), "UPDATE `accounts` SET `Gebannt` = '%i',`Ausfuehrender` = '%s',`Grund` = '%s' WHERE Name='%s'",
SpielerInfo[playerid][pGebannt],SpielerInfo[playerid][pAusfuehrender],SpielerInfo[playerid][pGrund],SpielerInfo[playerid][pName]);
mysql_query(query);
printf(query);
}
}
return 1;
} -
Zeig mal wie du es machst ?
-
pName
Das war ein Beispiel
-
Du gibst ja am ende WHERE Name = '%s' dass muss du auch am ende angeben so z.B
stock getPlayerName(playerid){
new name[24];
GetPlayerName(playerid, name, 24);
return name;
}new query[128];
format(query, sizeof(query), "UPDATE table SET variable = '%s' WHERE Name = '%s' ", string, getPlayerName(playerid));
mysql_query(query); -
Du gibts aber auch eine Float an für den Name ?
-
Ok dann bringe sie mal wd zum laufen
aber du hast keine speicherungs fehler oder so wenn doch zeig uns mal deinen saveplayer stock 
-
Also du meinst erst wird der wert richtig eingetragen dann wird er überschrieben mit leeren platzhaltern ?
-
Du verstehst das falsch:
%s ist ein Platzhalter für einen string

einen string sollte man formatieren
den platzhalter für das format sollte man angeben
Der letze parameter für format heißt {Float,_}:...)
Da vo du die werte eintragen lässt für den jeweiligen platzhalter also %. -
Successfully executed.
Succesfully heißt erfolgreich und executed ausgeführt
Also kurz gesagt erfolgreich ausgeführtVerstehe nun dein Prob nicht

-
Es gibt die Funktion "GetPlayerTargetPlayer(). Die gibt dir die ID des Spielers, auf den du gerade aimst. Das vereinfacht vieles.

Ich finde diese aber nicht in der wiki ? -
Du hast doch die MySQL Version R5 oder ?
-
sInfo[playerid/killerid][Variable]aktion;
So bekommst du es in eine Variable

-
1)
1. Wird er dadurch nicht gefreezt da du die able auf 1 stellt also true
2. soll er nicht drauf schiesen sondern drauf zielen und z drücken
-
Jap:
new query[128];
format(query, sizeof(query), "UPDATE table SET variable = '%s' WHERE Name = '%s' ", Float);
mysql_query(query); -
du formatierst einen befehl in einer string
dann wendest du das so anmysql_query(string);
-
nicht
Diese Aussagen verstehe ich indirekt nicht , ich sollte doch lieber continue verwenden da es den jeweiligen spileler überspringt und zum nächsten übergeht ?
-
ZU dem Stats ausgeben
Dafür muss es nicht bei jedem Tod/Kill gespeichert werden

CODE:
new Kill[MAX_PLAYERS], Death[MAX_PLAYERS];
public OnPlayerDeath(playerid, killerid, reason)
{
Kill[killerid] ++;
Death[playerid] ++;
return 1;
}Dann wenn du es mit %i oder %d je nach dem in einem stats Dialog ausgeben möchtest setzt du einfach an der jeweiligen Float
Death[playerid] oder Kill[playerid]#
Hoffe konnte dir Helfen

-
Wieso so kompliziert? Mach es einfach so das du OnPlayerGivePlayerDamage nutzt ?
Er soll ja nicht draufschiesen sondern nur drauf zielen und dann z drücken//Edit:
if(newkeys == KEY_YES && IsACop(playerid) && sStats[playerid][sDuty] != 0 && GetPlayerWeapon(playerid) == 24 && HOLDING(KEY_HANDBRAKE))
{
new tid, Float:Distance;
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(i==INVALID_PLAYER_ID || sStats[i][Eingeloggt] == 0 || IsACop(i), GetPVarInt(i, "Tazed") != 0)continue;
GetPlayerPos(i, ipX[i], ipY[i], ipZ[i]);
if(!IsPlayerAimingAt(playerid, ipX[i], ipY[i], ipZ[i], 1.4))continue;
Distance = GetPlayerDistanceFromPoint(playerid, ipX[i], ipY[i], ipZ[i]);
tid = i;
}
if(Distance > 4)return SendClientMessage(playerid, Rot, "Fehler: Du bist zu weit vom Spieler entfernt!");
Tazer(tid, GetName(playerid));
return 1;
} -
Hey

Wollte fragen da ich momentan keinen zum Testen habe ob dieser Code denn gehen würde
if(newkeys == KEY_YES && IsACop(playerid) && sStats[playerid][sDuty] != 0)
{
new tid, Float:Distance;
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(i==INVALID_PLAYER_ID || sStats[i][Eingeloggt] == 0 || IsACop(i), GetPVarInt(i, "Tazed") != 0)continue;
GetPlayerPos(i, ipX[i], ipY[i], ipZ[i]);
if(!IsPlayerAimingAt(playerid, ipX[i], ipY[i], ipZ[i], 1.4))continue;
Distance = GetPlayerDistanceFromPoint(playerid, ipX[i], ipY[i], ipZ[i]);
tid = i;
}
if(Distance > 4)return SendClientMessage(playerid, Rot, "Fehler: Du bist zu weit vom Spieler entfernt!");
Tazer(tid, GetName(playerid));
return 1;
}//DistanceCameraTargetToLocation
stock Float:DistanceCameraTargetToLocation(Float:CamX, Float:CamY, Float:CamZ, Float:ObjX, Float:ObjY, Float:ObjZ, Float:FrX, Float:FrY, Float:FrZ)
{
new Float:TGTDistance;TGTDistance = floatsqroot((CamX - ObjX) * (CamX - ObjX) + (CamY - ObjY) * (CamY - ObjY) + (CamZ - ObjZ) * (CamZ - ObjZ));
new Float:tmpX, Float:tmpY, Float:tmpZ;
tmpX = FrX * TGTDistance + CamX;
tmpY = FrY * TGTDistance + CamY;
tmpZ = FrZ * TGTDistance + CamZ;return floatsqroot((tmpX - ObjX) * (tmpX - ObjX) + (tmpY - ObjY) * (tmpY - ObjY) + (tmpZ - ObjZ) * (tmpZ - ObjZ));
}
//Abfragen ob er auf eine Bestimme stelle geschossen hat
stock IsPlayerAimingAt(playerid, Float:pXx, Float:pYy, Float:pZz, Float:radius)
{
new Float:cx,Float:cy,Float:cz,Float:fx,Float:fy,Float:fz;
GetPlayerCameraPos(playerid, cx, cy, cz);
GetPlayerCameraFrontVector(playerid, fx, fy, fz);
return (radius >= DistanceCameraTargetToLocation(cx, cy, cz, pXx, pYy, pZz, fx, fy, fz));
}