jetzt wo du es sagts ...
na gut dann ist mein vorschlag ... nennen wir es "eher suboptimal"
jetzt wo du es sagts ...
na gut dann ist mein vorschlag ... nennen wir es "eher suboptimal"
bei welcher zeile ist der fehler denn ?
schau ma bei der errormeldung steht die zeile ja bei ... poste die einfach dann schauen wir weiter:
...\gamemodes\SanCabana.pwn(468) : error 017: undefined symbol "dkq"
pack doch
SetPlayerScore(playerid,0);
bei OnPlayerUpdate() mit rein ...
wenns dadurch laggt machste halt nen timer der das alle 1-2 sek macht
Also ganz oben wo du die Variablen definierst muss folgendes rein:
new Tor;
new TimerClose;
forward TorClose();
Bei OnGameModeInit():
Tor = CreateObject(-1526.37, -2246.49, 6.27031,0,0,0,987);
Bei den Commands dann das hier:
if (strcmp("/kina", cmdtext, true, 10) == 0)
{
MoveObject(Tor, -1540.37, -2246.49, 6.27031,10);
TimerClose = SetTimer("TorClose", 5000, 0);
return 1;
}
unten bei den Publics dann:
public TorClose()
{
MoveObject(Tor, -1526.37, -2246.49, 6.27031,10);
return 1;
}
Mit dem Adminlevel musst du mal schauen in welcher Var das gespeichert ist .. das kannste dann ja mit im Befehl einbauen.
//edit:
Hab noch kurz einiges ausgebessert das ich vergessen hatte
hab das ganze jetzt mal mit prints zugepflastert um zu sehen wo es genau hängt..
und wie vermutet wird ab anfang dieser zeile der rest der funktion nicht ausgeführt:
Festnetz[nummer][x] = floatstr(arrCoords[1]);
Dummerweise hab ich 0 ideen an was es liegt.
Ansonsten rennt der server normal weiter und auch beim compilen kommt nix
Nabend
Ich versuche seit ungefähr 2-3 stunden einen per DINI ausgelesenen Wert (float) einem Array zuzuweisen und da sich inzwischen meine haarpracht doch sehr ins graue verfärbt dachte ich das vllt einer von euch ne schlaue Idee hat die dieses Problem löst (das mit dem array .. Das mit den haaren kann man durch färben lösen).
das besagte Array :
enum details
{
Float:x,
Float:y,
Float:z,
Float:rotx,
Float:roty,
Float:rotz,
};
new Festnetz[256][details];
Und die Funktion die nicht will:
public LoadFestnetz()
{
new string[256], file[48];
file = "festnetz.ini";
if(dini_Exists(file))
{
new arrCoords[7][64];
new anzahl, i, nummer, now[64];
i = 1;
anzahl = dini_Int(file, "anzahl");
while(i <= anzahl)
{
format(now, sizeof(now), "%d", i);
string = dini_Get(file, now);
split(string, arrCoords, '|');
nummer = strval(arrCoords[0]);
Festnetz[nummer][x] = floatstr(arrCoords[1]);
Festnetz[nummer][y] = floatstr(arrCoords[2]);
Festnetz[nummer][z] = floatstr(arrCoords[3]);
Festnetz[nummer][rotx] = floatstr(arrCoords[4]);
Festnetz[nummer][roty] = floatstr(arrCoords[5]);
Festnetz[nummer][rotz] = floatstr(arrCoords[6]);
printf(" Telefon mit der Nummer %d geladen - %f,%f,%f,%f,%f,%f ", nummer, Festnetz[nummer][x], Festnetz[nummer][y], Festnetz[nummer][z], Festnetz[nummer][rotx], Festnetz[nummer][roty], Festnetz[nummer][rotz]);
i++;
}
}
return 1;
}
Das Problem ist er gibt das printf nicht aus da er ab dem ersten float das eingelesen wird nicht mehr weitermacht.
Hier noch die ini die ausgelesen wird:
anzahl=1
1=28283245|1188.82|-929.432|42.7978|0|0|9.9249
Ich hoffe das trotz der späten Stunde noch jemand Wach genug für ne gute Idee ist.
Danke schonmal im Vorraus