Oder du machst es dir einfacher, wie ich es dir gesagt hatte
new Object[objektanzahl];
Object[0]=CreateObject..
Object[1]=CreateObject..
for(new i;i<sizeof(Object);i++){SetOjectMaterial(Object[i], ....);}
So habe ich das auch immer gemacht
Oder du machst es dir einfacher, wie ich es dir gesagt hatte
new Object[objektanzahl];
Object[0]=CreateObject..
Object[1]=CreateObject..
for(new i;i<sizeof(Object);i++){SetOjectMaterial(Object[i], ....);}
So habe ich das auch immer gemacht
Alles anzeigenDort wo du ihn freezed hinzufügen:
SetTimerEx("UnfreezeP", 15000, 0, "d", playerid);
Und ganz unten im GameMode:
forward UnfreezeP(playerid);
public UnfreezeP(playerid)
{
TogglePlayerControllable(playerid, 1);
return 1;
}
Aber dies kann man doch noch viel besser schreiben!
SetTimerEx("@UnfreezeP",15000,0,"i",playerid);
@UnfreezeP(playerid); @UnfreezeP(playerid)return TogglePlayerControllable(playerid, 1);
Das stimmt, wieso nimmst du denn nicht MySQL ? da gibt es mysql_insert_id oder cache_insert_id
Bau das ganze mal so auf!
ocmd:crewerstellen(playerid,params[])
{
new name[55];
if(sscanf(params,"s",name))return SendClientMessage(playerid,ORANGE," Benutzung: /crewerstellen [Crewname]");
new datei[75];
format(datei,75,"/Crews/%s.ini", name);
if(dini_Exists(datei))return SCM(playerid, ORANGE, " Gibts schon!");
new string[90];
format(string, sizeof(string), "SYSTEM: Die Crew mit dem Namen %s wurde erfolgreich erstellt!", name);
SendClientMessage(playerid, GRUN, string);
SendClientMessage(playerid, ORANGE, "• CREW SYSTEM •");
SendClientMessage(playerid, ORANGE, " Lade nun Leute mit /ceinladen, in deiner Crew ein!");
dini_Create(datei);
}
Arbeite statt mit einer id, mit einem string!
Benutze mal dini_get
format(Crewpfad,sizeof(Crewpfad),"/Crews/%i.ini", CrewID++);
format(tmp_name, size, "%s", dini_Get(Crewpfad, "Name");
printf("Der name der Crew lautet %s", tmp_name);
Dies sollte so Funktionieren
Oh verpeilt,
Natürlich kannst du unten return KissAntrag[giveplayerid] = playerid; machen
if(!IsPlayerConnected(giveplayerid))return SendClientMessage(playerid, COLOR_GREY, " Dieser Spieler ist nicht in deiner Nähe !");
if(giveplayerid == INVALID_PLAYER_ID)return 1;
Was machst du denn hier ?
Erst fragst du ab, ob der Spieler nicht Connected ist, dann übergibst du die Spielernachricht: Dieser Spieler ist nicht in deiner Nähe !
Anschließend fragst du ab ob giveplayerid eine ungültige ID ist!
Wo bleibt der sinn
Ich würde dir noch empfehlen das ganze so zu machen:
ocmd:kiss(playerid,params[]){
new giveplayerid, Float:pPos[3];
if(sscanf(params,"u",giveplayerid))return SendClientMessage(playerid, COLOR_GRAD1, "Benutze: /kiss [playerid]");
if(giveplayerid == INVALID_PLAYER_ID)return SendClientMessage(playerid,-1,"Der Spieler ist nicht online!");
GetPlayerPos(giveplayerid, pPos[0], pPos[1], pPos[2]);
if(GetPlayerDistanceFromPoint(playerid, pPos[0], pPos[1], pPos[2]) > abstand)return SendClientMessage(playerid,-1,"Du bist nicht in der nähe von dem Spieler!");
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer)),GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* Du bietest %s einen Kuss.", giveplayer),SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), "* %s bietet dir einen Kuss. (/kissannehmen)", sendername),SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
TogglePlayerControllable(playerid,false); // Hier wird er gefreezed
}
ocmd:kissannehmen(playerid){
new pPos[3];
GetPosVorSpieler(KissAntrag[playerid], 5.0, pPos[0], pPos[1], pPos[2]);
if(GetPlayerDistanceFromPoint(playerid, pPos[0], pPos[1], pPos[2]) > 2.9)return 1;
SetPlayerPos(playerid, pPos[0], pPos[1], pPos[2]);
TogglePlayerControllable(KissAntrag[playerid], 1);
ApplyAnimation(playerid,"KISSING","Playa_Kiss_02",4.1,0,0,0,1,1);
ApplyAnimation(KissAntrag[playerid],"KISSING","Grlfrd_Kiss_02",4.1,0,0,0,1,1);
return KissAntrag[playerid] = 0;
}
Mit strcmp & strtok ist das nicht gerade anders
Nutzt du auch die Funktion SetPlayerSpawnInfo ?
Du mein SetSpawnInfo oder?
Vllt. noch andere Keybinder offen ? F3 taste defekt!
Kannst dich gerne im Teamspeak melden.
Vorbereitung, sie haben schon was was zu tuhen, alles mögliche
Aktuell möchte ich noch keinen Techniker da ich keine NPL habe!
Mit Forum wegen der Lizenz!
Mach es mal so: F3:: statt ~F3::
Naja du lässt die Deutsche Uhrzeit normalerweise ganz normal mit gettime auslesen
Für was brauchst du denn FixHour ?
Hau das mal raus..
Vielen Vielen Dank, ich dachte PAWN kann das ganze Dynamisch machen
Funktioniert nun einwandfrei!
Er zeigt aber nicht alles an
print:
[14:27:04] row_data: 4|Michael_Weiner|37.4.93....
[14:27:04] name: | ip:
[14:27:04] row_data: 5|fefef|121
[14:27:04] name: Michael_Weiner | ip: 37.4.93....
[14:27:04] row_data: 7|testrow|121212
[14:27:04] name: fefef | ip: 121
Quellcode:
while(mysql_fetch_row_format(row_data))
{
printf("row_data: %s", row_data), printf("name: %s | ip: %s", tmp_var[0], tmp_var[1]);
mysql_fetch_field_row(tmp_var[0], "Name");
mysql_fetch_field_row(tmp_var[1], "IP");
format(string, sizeof(string), "%sName: %s | IP: %s\n",string, tmp_var[0], tmp_var[1]);
}
Print:
Ingame:
Datenbank:
Er zeigt nur den Letzen Eintrag an!