du kannst es natührlich auch einfach probieren,
du musst ja nur x und y ändern und vielleicht z(höhe), einfach mal +1 oder so
AttachObjectToVehicle(sirene[vid],vid,x, y, z, 2.0, 2.0, 3.0);
du kannst es natührlich auch einfach probieren,
du musst ja nur x und y ändern und vielleicht z(höhe), einfach mal +1 oder so
AttachObjectToVehicle(sirene[vid],vid,x, y, z, 2.0, 2.0, 3.0);
oh mist hab gar nicht daran gedacht, vielen dank
hi, frage zu case
case 1 .. 100:
{
kann ich hier herausfinden welche zahl zwischen 1 und 100 ausgewählt wurde ?
}
ja hab ich schon, wollte ja nur fragen ob das eine gute möglichkeit ist
aber wenn nicht mach ich das mit cron
Hi,
ich hab mir ein autorestart zusammengebastelt,
jetzt wollte ich euch fragen ob das ein gute lösung ist, oder ob der cod überhaupt richtig ist oder man ihn verbessern kann
ich sag gleich das ich davon nicht viel ahung hab und das es nur zusammengebastelt ist, aber es funktioniert
also da gibts immer ungefähr um 5 uhr ein restart
#!/bin/bash
nohup ./samp03svr &
function restart
{
while [ $(date +%H) -ne $'5' ]; do
sleep 1500
done
killall ./samp03svr &
sleep 10
nohup ./samp03svr &
sleep 79200
restart
}
restart
Alles anzeigen
mfg Markus
ja aber wie kann es sein das autos die selbe vehicle id bekommen, das geht ja normal gar nicht
es hatte schon mehr leute den bug, aber es gab nie eine richtige lösung
Hallo,
bei meinem Auto Script vertauschen sich die vehicleids
z.B.
Tom portet sein auto zu sich und bekommt das auto von jemand anderen, weil sie die selbe vehilceid in SpielerInfo[playerid][PlayerAuto] haben
hier mal die Codeschnipsel wo SpielerInfo[playerid][PlayerAuto] ein neuen wert bekommt oder geändert wird
beim auto kaufen
SpielerInfo[playerid][PlayerAuto][CarID] = CreateVehicle(model,kAutoSpawn[rand][0],kAutoSpawn[rand][1],kAutoSpawn[rand][2],kAutoSpawn[rand][3],-1,-1,99999999);
beim auto respawnen
SpielerInfo[playerid][PlayerAuto][CarID] = CreateVehicle(SpielerAuto[playerid][CarID][cModel],SpielerAuto[playerid][CarID][CarPos][0],SpielerAuto[playerid][CarID][CarPos][1],SpielerAuto[playerid][CarID][CarPos][2],SpielerAuto[playerid][CarID][CarPos][3],SpielerAuto[playerid][CarID][cColor1],SpielerAuto[playerid][CarID][cColor2],99999999);
beim einloggen
SpielerInfo[playerid][PlayerAuto][cid] = CreateVehicle(SpielerAuto[playerid][cid][cModel],SpielerAuto[playerid][cid][CarPos][0],SpielerAuto[playerid][cid][CarPos][1],SpielerAuto[playerid][cid][CarPos][2],SpielerAuto[playerid][cid][CarPos][3],SpielerAuto[playerid][cid][cColor1],SpielerAuto[playerid][cid][cColor2],99999999);
bei onvehilcespawn(das ist zwar unnötig aber ist ja egal)
SpielerInfo[i][PlayerAuto][ii] = CreateVehicle(SpielerAuto[i][ii][cModel],SpielerAuto[i][ii][CarPos][0],SpielerAuto[i][ii][CarPos][1],SpielerAuto[i][ii][CarPos][2],SpielerAuto[i][ii][CarPos][3],SpielerAuto[i][ii][cColor1],SpielerAuto[i][ii][cColor2],99999999);
bei OnPlayerDisconnect
SpielerInfo[playerid][PlayerAuto][i] = 0;
und beim auto verkaufen
SpielerInfo[playerid][PlayerAuto][CarID] = 0;
nur hier bekommt SpielerInfo[playerid][PlayerAuto] ein neuen wert
ich hab ein command eingebaut der alle spieler durchgeht und von allen autos die vehicleids auflistet damit ich mal sehe was da los ist
man kann drei autos haben deswegen 1 , 2 oder 3 zahlen
[30.4.2013] [18:12:38]Spieler1(id:11): 1056, 1056, 1058; hier hat er zweimal 1056
[30.4.2013] [18:12:38]Spieler2(id:12): 1059;
[30.4.2013] [18:12:38]Spieler3(id:13): 1056, 1058; hier hat wieder einer 1056
[30.4.2013] [18:12:38]Spieler4(id:14): 1063, 1071;
[30.4.2013] [18:12:38]Spieler5(id:15): 1069, 1070;
[30.4.2013] [18:12:38]Spieler6(id:17): 1061;
[30.4.2013] [18:12:38]Spieler7(id:19): 1065, 1066, 1067;
[30.4.2013] [18:12:38]Spieler8(id:23): 1056, 1057, 1058; hier auch 1056
hier ist noch der command
dcmd_carbug(playerid, params[])
{
#pragma unused params
if(GetPVarInt(playerid, "admin")>=10 || IsPlayerAdmin(playerid))
{
new string[70];
ForPlayer(i)
{
if(!SpielerInfo[i][PlayerAutos]) continue;
if(SpielerInfo[i][PlayerAutos] == 1)
{
format(string,sizeof(string), "%s(id:%d): %d;",Player(i), i, SpielerInfo[i][PlayerAuto][0]);
}
else if(SpielerInfo[i][PlayerAutos] == 2)
{
format(string,sizeof(string), "%s(id:%d): %d, %d;",Player(i), i, SpielerInfo[i][PlayerAuto][0],SpielerInfo[i][PlayerAuto][1]);
}
else if(SpielerInfo[i][PlayerAutos] == 3)
{
format(string,sizeof(string), "%s(id:%d): %d, %d, %d;",Player(i), i, SpielerInfo[i][PlayerAuto][0],SpielerInfo[i][PlayerAuto][1],SpielerInfo[i][PlayerAuto][2]);
}
SendClientMessage(playerid,hellrot,string);
BugLog(string);
}
}
else SendClientMessage(playerid,rot,KEINADMIN);
return 1;
}
wie kann es sein das leute die selbe vehilceids haben, ich hoffe es kann jemand helfen
mfg Markus
md5 kannst du gar nicht auslesen, du musst das im inputtext auch mit md5 verschlüsseln und dan die beiden vergleichen
if(!strcmp(MD5_Hash(inputtext), mysql_ReturnPasswort(SpielerName(playerid)), true))
Hallo,
bei meinem Auto Script vertauschen sich die vehicleids
z.B.
Tom portet sein auto zu sich und bekommt das auto von jemand anderen, weil sie die selbe vehilceid in SpielerInfo[playerid][PlayerAuto] haben
hier mal die Codeschnipsel wo SpielerInfo[playerid][PlayerAuto] ein neuen wert bekommt oder geändert wird
beim auto kaufen
SpielerInfo[playerid][PlayerAuto][CarID] = CreateVehicle(model,kAutoSpawn[rand][0],kAutoSpawn[rand][1],kAutoSpawn[rand][2],kAutoSpawn[rand][3],-1,-1,99999999);
beim auto respawnen
SpielerInfo[playerid][PlayerAuto][CarID] = CreateVehicle(SpielerAuto[playerid][CarID][cModel],SpielerAuto[playerid][CarID][CarPos][0],SpielerAuto[playerid][CarID][CarPos][1],SpielerAuto[playerid][CarID][CarPos][2],SpielerAuto[playerid][CarID][CarPos][3],SpielerAuto[playerid][CarID][cColor1],SpielerAuto[playerid][CarID][cColor2],99999999);
beim einloggen
SpielerInfo[playerid][PlayerAuto][cid] = CreateVehicle(SpielerAuto[playerid][cid][cModel],SpielerAuto[playerid][cid][CarPos][0],SpielerAuto[playerid][cid][CarPos][1],SpielerAuto[playerid][cid][CarPos][2],SpielerAuto[playerid][cid][CarPos][3],SpielerAuto[playerid][cid][cColor1],SpielerAuto[playerid][cid][cColor2],99999999);
bei onvehilcespawn(das ist zwar unnötig aber ist ja egal)
SpielerInfo[i][PlayerAuto][ii] = CreateVehicle(SpielerAuto[i][ii][cModel],SpielerAuto[i][ii][CarPos][0],SpielerAuto[i][ii][CarPos][1],SpielerAuto[i][ii][CarPos][2],SpielerAuto[i][ii][CarPos][3],SpielerAuto[i][ii][cColor1],SpielerAuto[i][ii][cColor2],99999999);
bei OnPlayerDisconnect
SpielerInfo[playerid][PlayerAuto][i] = 0;
und beim auto verkaufen
SpielerInfo[playerid][PlayerAuto][CarID] = 0;
nur hier bekommt SpielerInfo[playerid][PlayerAuto] ein neuen wert
ich hab ein command eingebaut der alle spieler durchgeht und von allen autos die vehicleids auflistet damit ich mal sehe was da los ist
man kann drei autos haben deswegen 1 , 2 oder 3 zahlen
[30.4.2013] [18:12:38]Spieler1(id:11): 1056, 1056, 1058; hier hat er zweimal 1056
[30.4.2013] [18:12:38]Spieler2(id:12): 1059;
[30.4.2013] [18:12:38]Spieler3(id:13): 1056, 1058; hier hat wieder einer 1056
[30.4.2013] [18:12:38]Spieler4(id:14): 1063, 1071;
[30.4.2013] [18:12:38]Spieler5(id:15): 1069, 1070;
[30.4.2013] [18:12:38]Spieler6(id:17): 1061;
[30.4.2013] [18:12:38]Spieler7(id:19): 1065, 1066, 1067;
[30.4.2013] [18:12:38]Spieler8(id:23): 1056, 1057, 1058; hier auch 1056
hier ist noch der command
dcmd_carbug(playerid, params[])
{
#pragma unused params
if(GetPVarInt(playerid, "admin")>=10 || IsPlayerAdmin(playerid))
{
new string[70];
ForPlayer(i)
{
if(!SpielerInfo[i][PlayerAutos]) continue;
if(SpielerInfo[i][PlayerAutos] == 1)
{
format(string,sizeof(string), "%s(id:%d): %d;",Player(i), i, SpielerInfo[i][PlayerAuto][0]);
}
else if(SpielerInfo[i][PlayerAutos] == 2)
{
format(string,sizeof(string), "%s(id:%d): %d, %d;",Player(i), i, SpielerInfo[i][PlayerAuto][0],SpielerInfo[i][PlayerAuto][1]);
}
else if(SpielerInfo[i][PlayerAutos] == 3)
{
format(string,sizeof(string), "%s(id:%d): %d, %d, %d;",Player(i), i, SpielerInfo[i][PlayerAuto][0],SpielerInfo[i][PlayerAuto][1],SpielerInfo[i][PlayerAuto][2]);
}
SendClientMessage(playerid,hellrot,string);
BugLog(string);
}
}
else SendClientMessage(playerid,rot,KEINADMIN);
return 1;
}
wie kann es sein das leute die selbe vehilceids haben, ich hoffe es kann jemand helfen
mfg Markus
das selbe bei mir
ich meine aber nicht das normal ich würde gerne wissen welche variante von den oben genannte besser ist
danke, habs jetzt verstanden
aber weißt du noch was ressourcen schonender ist ?
ich glaub ja das hier, bin mir nicht sicher
#define scm(%1,%2,%3,%4) {format(gstring,sizeof(gstring),%3,%4); SendClientMessage(%1,%2,gstring);}
new gstring[128];
und was bringt das in meinem code, bei dir ist es ja auch nicht
do{ } while(False)
ja aber 2 fehler sind schonmal behoben, schick die nächsten errors
edit:
noch ein fehler gefunden
else if(strcmp(key,"AH_Typ",true)==0) { AutosL[playerid][Typ]=strval(ini_GetValue(Data)); }
beim ersten muss das else weg also
if(strcmp(key,"AH_Typ",true)==0) { AutosL[playerid][Typ]=strval(ini_GetValue(Data)); }
du musst nachschauen was du als letztes gemacht hast
hallo
Zitat#define scm(%1,%2,%3,%4); format(gstring[%1],128,%3,%4); SendClientMessage(%1,%2,gstring[%1]);
new gstring[MAX_PLAYERS];
ich hab irgendwo das gefunden, was ist von deinem der unterschied zu dem ? oder was ist besser oder schlechter ?
#define SendText(%0,%1,%2,%3) do{new _string[128]; format(_string,sizeof(_string),%2,%3); SendClientMessage(%0,%1,_string);} while(False)
mfg
CJ Skin ist ja 0 glaub ich, das heißt das die variable auf 0 steht
mach doch mal bei onplayerconnect das hin, und versuchs nochmal, dan dürfte die variable nichtmehr auf 0 sein
if(PlayerInfo[playerid][pMember] == 1 || PlayerInfo[playerid][pLeader] == 1)
{
if(PlayerInfo[playerid][pSex] == 1)
{
//Male Skin
if(PlayerInfo[playerid][pRank] == 1) { PlayerInfo[playerid][pChar] = 71; }
else if(PlayerInfo[playerid][pRank] == 2) { PlayerInfo[playerid][pChar] = 280; }
else if(PlayerInfo[playerid][pRank] == 3) { PlayerInfo[playerid][pChar] = 266; }
else if(PlayerInfo[playerid][pRank] == 4) { PlayerInfo[playerid][pChar] = 267; }
else if(PlayerInfo[playerid][pRank] == 5) { PlayerInfo[playerid][pChar] = 281; }
else if(PlayerInfo[playerid][pRank] == 6) { PlayerInfo[playerid][pChar] = 265; }
else if(PlayerInfo[playerid][pRank] == 7) { PlayerInfo[playerid][pChar] = 282; }
else if(PlayerInfo[playerid][pRank] == 8) { PlayerInfo[playerid][pChar] = 288; }
else if(PlayerInfo[playerid][pSex] == 2) { PlayerInfo[playerid][pChar] = 211; }
}
}
und da bei setplayerskin PlayerInfo[playerid][pChar]
if(PlayerInfo[playerid][pMember] == 1 PlayerInfo[playerid][pLeader] == 1)
{
format(string, sizeof(string), "* Officer %s hat sich seine Ausruestung aus einem Schrank genommen.", sendername);
SetPlayerSkin(playerid, PlayerInfo[playerid][pChar]);
}
if(PlayerInfo[playerid][pMember] == 1 || PlayerInfo[playerid][pLeader] == 1)
{
format(string, sizeof(string), "* Officer %s hat sich seine Ausruestung aus einem Schrank genommen.", sendername);
SetPlayerSkin(playerid, PlayerInfo[playerid][pChar]);
}
einfach PlayerInfo[playerid][pChar] anstatt der id hin, wenn ich mich nicht irre