Nein, man kann es auch so machen
Beiträge von Mr.Undercover
In 10 Minuten startet der nächtliche Backupvorgang! Es kann währenddessen (ca. 10 Minuten) zu Einschränkungen bei der Nutzung des Forums kommen
Weitere Infos findet ihr im Thema Backup des Forums
-
-
Ich finde es geil besonders den schwarzen Rand
10/10 -
Magst du uns Vllt sagen was der Fehler ist
-
Hey,
Irgendwie erstellt es nach einem Server Restart die PickUps nicht mehr
stock LoadHaus(hausid)
{
new inhalt[35],File:f;
format(inhalt,20,"Häuser/Haus %d.ini",hausid);
if(!fexist(inhalt)) return false;
f=fopen(inhalt,io_read);
while(fread(f,inhalt))
{
StripNL(inhalt);
if(strfind(inhalt,"Besitzer: ")!=-1) strdel(inhalt,0,10), format(Haus[hausid][Besitzer],MAX_PLAYER_NAME,inhalt);
else if(strfind(inhalt,"Gekauft: ")!=-1) strdel(inhalt,0,9), Haus[hausid][Gekauft]=(strval(inhalt))?true:false;
else if(strfind(inhalt,"Abgeschlossen: ")!=-1) strdel(inhalt,0,15), Haus[hausid][Abgeschlossen]=(strval(inhalt))?true:false;
else if(strfind(inhalt,"AußenPosX: ")!=-1) strdel(inhalt,0,11), Haus[hausid][Pos][0]=floatstr(inhalt);
else if(strfind(inhalt,"AußenPosY: ")!=-1) strdel(inhalt,0,11), Haus[hausid][Pos][1]=floatstr(inhalt);
else if(strfind(inhalt,"AußenPosZ: ")!=-1) strdel(inhalt,0,11), Haus[hausid][Pos][2]=floatstr(inhalt);
else if(strfind(inhalt,"InnenPosX: ")!=-1) strdel(inhalt,0,11), Haus[hausid][Pos][3]=floatstr(inhalt);
else if(strfind(inhalt,"InnenPosY: ")!=-1) strdel(inhalt,0,11), Haus[hausid][Pos][4]=floatstr(inhalt);
else if(strfind(inhalt,"InnenPosZ: ")!=-1) strdel(inhalt,0,11), Haus[hausid][Pos][5]=floatstr(inhalt);
else if(strfind(inhalt,"Interior: ")!=-1) strdel(inhalt,0,10), Haus[hausid][Int]=strval(inhalt);
else if(strfind(inhalt,"VirtualWorld: ")!=-1) strdel(inhalt,0,14), Haus[hausid][VirtualWorld]=strval(inhalt);
else if(strfind(inhalt,"Preis: ")!=-1) strdel(inhalt,0,7), Haus[hausid][Preis]=strval(inhalt);
}
Haus[hausid][PickupID] = CreatePickup((Haus[hausid][Gekauft])?1239:1273,1,Haus[hausid][Pos][0],Haus[hausid][Pos][1],Haus[hausid][Pos][2]);
fclose(f);
return true;
}Wäre nett wenn ihr mir Helfen könnt
ocmd:buyhaus(playerid)
{
new ID=GetNearestHaus(playerid,4);
if(ID==-1) return SendClientMessage(playerid,-1,"Du bist nicht in der Nähe eines Hauses");
if(GetPlayerMoney(playerid)<Haus[ID][Preis]) return SendClientMessage(playerid,-1,"Soviel Geld hast du nicht bei dir");
if(!strcmp(Haus[ID][Besitzer],"Niemand"))
{
GetPlayerName(playerid,Haus[ID][Besitzer],MAX_PLAYER_NAME);
DestroyPickup(Haus[ID][PickupID]);
RemovePlayerMapIcon(playerid,STARTMAPICON+ID);
SetPlayerMapIcon(playerid,STARTMAPICON+ID,Haus[ID][Pos][0],Haus[ID][Pos][1],Haus[ID][Pos][2],32,0xFFFFFFFF);
Haus[ID][PickupID] = CreatePickup(1239,1,Haus[ID][Pos][0],Haus[ID][Pos][1],Haus[ID][Pos][2]);
new string[65];
format(string,65,"Dieses Haus gehört:\n%s%s",Haus[ID][Besitzer],(Haus[ID][Abgeschlossen])?("\n\nAbgeschlossen"):(""));
Update3DTextLabelText(Haus[ID][Label],0x33AA33FF,string);
return true;
}
return SendClientMessage(playerid,-1,"Dieses Haus kann man nicht kaufen");
}Beim Erstellen vom Haus kommt ein Pickup
Danke im Vorraus -
Hey,
Wie denn
Warum nicht OCMD
Mit Sccanf arbeiten ist leicht -
Hey,
Ich würde dir empfehlen mit OCMD zuarbeiten
Da würde es so aussehen
cmd:veh(playerid,params[])
{
if(!istPlayerAnAdmin(playerid,4))return SendClientMessage(playerid, ROT,"Du bist kein Admin."); //An deine Admin anfrage anpassen
new Float:X,Float:Y,Float:Z;
new string[256];
new CarID,Color1,Color2;
new Car;
if(sscanf(params,"iii",CarID,Color1,Color2))
{
SendClientMessage(playerid,GRÜN,"Benutze: /veh [CarID] [Color1] [Color2]");
return 1;
}
else
{
if(CarID<402||CarID>603)
{
SendClientMessage(playerid,ROT,"Die CarID muss zwischen 402 und 603 liegen.");
return 1;
}
else
{
format(string,sizeof(string),"Du hast dir die CarID: %i gespawnt.",CarID);
SendClientMessage(playerid,GELB, string);
GetPlayerPos(playerid,X,Y,Z);
Car = AddStaticVehicleEx(CarID,X+3,Y,Z, 0, Color1, Color2,-1);
PutPlayerInVehicle(playerid,Car,0);
PlayerPlaySound(playerid,1133,0.0,0.0,0.0);
new ConsoleString[125];
format(ConsoleString,sizeof(ConsoleString),"Car Command: %s",SpielerName(playerid));
print(ConsoleString);
}
}
return 1;
} -
Bei fragen einfach melden
-
Du hast doch hier schon die Variable auf 1 gesetzt
Inviter[pid] = 1;Nun
dcmd_einladung annehmen
{
if(Inviter[playerid]==0)
{
SendClientMessage(playerid,ROT,"Du hast keine Einladung");
}
else if(Inviter[playerid]==1)
{
SendClientMessage(playerid,BLAU,"Du hast die Einladung in die Fraktion LSPD Angenommen");
}
}Meinst du das
-
Und genau das haben wir dir erklärt
Zeig uns mal deinen Einlade befehl
Wo er noch nicht akzeptieren Muss -
Wieso falsch ist doch richtig
Du musst ihn einladen
Wenn er Akzeptiert
Also musst du abfragen ob er eingeladen wurde und in welche FraktionWo ist das Falsch
-
Habe ich doch gesagt oder sehe ich das falsch
-
Wie mein vorgänger sagte
je nachdem in welcher Fraktion er eingeladen wird
setzt du die Variablenew Eingeladen[MAX_PLAYERS];
Auf z.b eins
Eingeladen[playerid] = 1;Dann fragst du ab ob die Variable 1 ist oder 0
if(Engeladen[playerid]==0)
{
Das keine EInladund da ist
}
else
{
//Die Variable erst wieder auf null
Eingeladen[playerid] = 0;
//Und in die Fraktion einladen}
-
hast du sie hochgeladen
Sprich bei Navicat?? -
Wie durch eine Variable??
Kannst du das genauer erklären/zeigenocmd:givemoney(playerid,params[])
{
new plid;
new geld;
new string[128];
if(!istPlayerAnAdmin(playerid,5))return SendClientMessage(playerid, ROT,"**Du bist kein Administrator.");
if(sscanf(params,"ui",plid,geld))return SendClientMessage(playerid, BLAU,"Tippe: /givemoney [Id/Name][Betrag]");
GivePlayerMoney(plid,geld);
format(string,sizeof(string),"[AdmCmd]%s bekommt %i$ von %s bekommen,",SpielerName(plid),geld,SpielerName(playerid));
SendClientMessage(plid, GRÜN,string);
PlayerInfo[plid][pGeld] == geld;
SpielerSpeichern(plid);
return 1;
}Weiß einer warum Das geld nicht gespeichert wird???
-
stock SpielerSpeichern(playerid)
{
if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid))
{
if(GetPVarInt(playerid,"logged") == 1)
{
new query[200];
format(query, sizeof(query), "UPDATE `accounts` SET `Tut` = '%d',`Level` = '%d',`Admin` = '%d',`Geld` = '%d',`Tode` = '%d',`Morde` = '%d',`Frak` = '%d', `Member` = '%d',`Leader` = '%d',`Bann` = '%d',`Warn` = '%d',`Payday` = '%d', `Perso` = '%d',`Clic` = '%d',`Flic` = '%d',`Mlic` = '%d',`Wlic` = '%d' WHERE `Name` = '%s'",
PlayerInfo[playerid][pTut],PlayerInfo[playerid][pLevel],PlayerInfo[playerid][pAdmin],PlayerInfo[playerid][pGeld],PlayerInfo[playerid][pTode],PlayerInfo[playerid][pMorde],PlayerInfo[playerid][pFrak],PlayerInfo[playerid][pMember],PlayerInfo[playerid][pLeader],PlayerInfo[playerid][pBann],PlayerInfo[playerid][pWarn],PlayerInfo[playerid][pPayDay],PlayerInfo[playerid][pPerso],
PlayerInfo[playerid][pClic],PlayerInfo[playerid][pFlic],PlayerInfo[playerid][pMlic],PlayerInfo[playerid][pWlic],SpielerName(playerid));
mysql_query(query);
format(query, sizeof(query), "UPDATE `accounts` SET `PosX` = '%f',`PosY` = '%f',`PosZ` = '%f',`PosA` = '%f',`Tod` = '%d',`PosTX` = '%f',`PosTY` = '%f',`PosTZ` = '%f' WHERE `Name` = '%s'",
PlayerInfo[playerid][pX],PlayerInfo[playerid][pY],PlayerInfo[playerid][pZ],PlayerInfo[playerid][pA],PlayerInfo[playerid][pTod],PlayerInfo[playerid][pTX],PlayerInfo[playerid][pTY],PlayerInfo[playerid][pTZ],SpielerName(playerid));
PlayerInfo[playerid][pGeld] = mysql_SetInt("accounts", "Geld", GetPlayerMoney(playerid),"Name", SpielerName(playerid));
mysql_query(query);
}
}
return 1;
}Du meinst so???
Aber wie speichere ich hier das Geld
Was er bekommt
Es wird einfach nicht geladen
oder gespeichert -
Habe ich,
Also sit es so richtig??mysql_SetInt("accounts", "Tut", PlayerInfo[playerid][pTut], "Name", SpielerName(playerid));
mysql_SetInt("accounts", "Level", PlayerInfo[playerid][pLevel], "Name", SpielerName(playerid));
mysql_SetInt("accounts", "Admin", PlayerInfo[playerid][pAdmin], "Name", SpielerName(playerid));
PlayerInfo[playerid][pGeld] = mysql_SetInt("accounts", "Geld", GetPlayerMoney(playerid),"Name", SpielerName(playerid));
mysql_SetInt("accounts", "Tode", PlayerInfo[playerid][pTode], "Name", SpielerName(playerid));
mysql_SetInt("accounts", "Morde", PlayerInfo[playerid][pMorde], "Name", SpielerName(playerid));
mysql_SetInt("accounts", "Frak", PlayerInfo[playerid][pFrak], "Name", SpielerName(playerid));
mysql_SetInt("accounts", "Member", PlayerInfo[playerid][pMember], "Name", SpielerName(playerid));
mysql_SetInt("accounts", "Leader", PlayerInfo[playerid][pLeader], "Name", SpielerName(playerid));
mysql_SetInt("accounts", "Bann", PlayerInfo[playerid][pBann], "Name", SpielerName(playerid));
mysql_SetInt("accounts", "Warn", PlayerInfo[playerid][pWarn], "Name", SpielerName(playerid));
mysql_SetInt("accounts", "Payday", PlayerInfo[playerid][pPayDay], "Name", SpielerName(playerid));
mysql_SetInt("accounts", "Perso", PlayerInfo[playerid][pPerso], "Name", SpielerName(playerid));
mysql_SetInt("accounts", "Clic", PlayerInfo[playerid][pClic], "Name", SpielerName(playerid));
mysql_SetInt("accounts", "Mlic", PlayerInfo[playerid][pMlic], "Name", SpielerName(playerid));
mysql_SetInt("accounts", "pWlic", PlayerInfo[playerid][pWlic], "Name", SpielerName(playerid));
mysql_SetInt("accounts", "Level", PlayerInfo[playerid][pLevel], "Name", SpielerName(playerid));
mysql_SetInt("accounts", "Level", PlayerInfo[playerid][pLevel], "Name", SpielerName(playerid)); -
Kann einer mir das Speichern
enum PInfo
{
pTut,
pLevel,
pAdmin,
pGeld,
pTode,
pMorde,
pFrak,
pMember,
pLeader,
pBann,
pWarn,
pPayDay,
pPerso,
pClic,
pFlic,
pMlic,
pWlic,
Float:pX,
Float:pY,
Float:pZ,
Float:pA,
pTod,
Float:pTX,
Float:pTY,
Float:pTZ
} -
Hey,
Mein Geld wird nciht gespeichert
Wie kann ich es speichern??
Und dann wieder laden???
Ich arbeite mit MySQL R5
Wäre nett wenn ihr mir helfen könnt
mfg -
Beim Spieler
Wäre schlau -
Was für Plugins