Schau dir mal http://wiki.sa-mp.com/wiki/Attach3DTextLabelToVehicle an bzw die vom streamen
[SAMMELTHREAD] Kleine Scripting Fragen
- Rafelder
- Unerledigt
Dein Problem konnte durch einen User gelöst werden? Bedank dich bei ihm indem du seinen Beitrag als Hilfreich markierst sowie einen Daumen oben dalässt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!
Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
-
-
Das Label wird ja bei CreateDynamic3DTextLabel direkt ans Fahrzeug attached, siehe Option 9.
//e: Jemand zudem eine Ahnung, warum mein Game crashed?
CMD:scp(playerid)
{
if(PlayerInfo[playerid][pEingeloggt] != 1)return SendClientMessage(playerid, COLOR_ORANGE, "Info"HTML_WHITE": Du bist derzeit nicht eingeloggt.");
if(PlayerInfo[playerid][pAdminlevel] < 4)return SendClientMessage(playerid, COLOR_RED, "Fehler"HTML_WHITE": Diesen Befehl darfst du nicht benutzen.");
strdel(DialogString, 0, sizeof(DialogString));
switch(OOC)
{
case 0:
{
strcat(DialogString, ""HTML_ORANGE"1"HTML_WHITE". Out of Character Chat "HTML_RED"deaktiviert");
}
case 1:
{
strcat(DialogString, ""HTML_ORANGE"1"HTML_WHITE". Out of Character Chat "HTML_GREEN"aktiviert");
}
}
switch(Registrierung)
{
case 0:
{
strcat(DialogString, ""HTML_ORANGE"1"HTML_WHITE". Registrierung "HTML_RED"deaktiviert");
}
case 1:
{
strcat(DialogString, ""HTML_ORANGE"1"HTML_WHITE". Registrierung "HTML_GREEN"aktiviert");
}
}
switch(Login)
{
case 0:
{
strcat(DialogString, ""HTML_ORANGE"1"HTML_WHITE". Login "HTML_RED"deaktiviert");
}
case 1:
{
strcat(DialogString, ""HTML_ORANGE"1"HTML_WHITE". Registrierung "HTML_GREEN"aktiviert");
}
}
ShowPlayerDialog(playerid, DIALOG_SERVER, DIALOG_STYLE_LIST, ""HTML_ORANGE""#SERVER_NAME" "HTML_WHITE"- Server Control Panel", DialogString, "Auswählen", "Abbrechen");
return 1;
} -
Wie kann ich ein Fahrzeug in abgeschleppten Zustand bringen mit Befehl /abschleppen
und danach das wenn es abgeschleppt ist ein Dialog erscheint?Also generell werden die mit /abschleppen abgeschleppt wenn man im TT sitzt. Danke im Voraus.
-
Wie kann ich ein Fahrzeug in abgeschleppten Zustand bringen
Das machst du mit der Funktion: http://wiki.sa-mp.com/wiki/AttachTrailerToVehicle
Musst das nähste Fahrzeug finden und dann anhängen
//e: Jemand zudem eine Ahnung, warum mein Game crashed?
Wie gesagt, solche globalen Strings sind nicht gut.
Aber vielleicht weiß crashdetect was da vor sich geht -
Crashdetect gibt leider nichts aus..
-
Moin
Versuche nun meinen Gamemode nach 1. Jahr erneut massiv zu verbessern, und habe nun viel Laufzeitoptimierung erreicht.
Nun will ich auch an einigen Stellen mit Ternären Operatoren arbeiten, einzig und allein das, habe ich zuvor noch nie gemacht.Hat jemand da einen Tipp, wie ich diesen Block hier mit ternären Operatoren ausdrücken kann?
-
Code
Alles anzeigenforward LoadPlayerVehicles(playerid, slot); public LoadPlayerVehicles(playerid, slot) { new result[25], rows, fields; cache_get_data(rows, fields); if(rows) { cache_get_field_content(0, "Besitzer", result); format(SpielerAutoInfo[playerid][slot][saBesitzer], 25, result); SpielerAutoInfo[playerid][slot][saModelID] = cache_get_field_content_int(0, "ModelID"); SpielerAutoInfo[playerid][slot][saFarbe1] = cache_get_field_content_int(0, "Farbe1"); SpielerAutoInfo[playerid][slot][saFarbe2] = cache_get_field_content_int(0, "Farbe2"); SpielerAutoInfo[playerid][slot][vehPosX] = cache_get_field_content_int(0, "PosX"); SpielerAutoInfo[playerid][slot][vehPosY] = cache_get_field_content_int(0, "PosY"); SpielerAutoInfo[playerid][slot][vehPosZ] = cache_get_field_content_int(0, "PosZ"); SpielerAutoInfo[playerid][slot][vehPosA] = cache_get_field_content_int(0, "PosA"); SpielerAutoInfo[playerid][slot][saAnmeldungsOrt] = cache_get_field_content_int(0, "AnmeldungsOrt"); cache_get_field_content(0, "KFZNummer", SpielerAutoInfo[playerid][slot][saKFZNummer], sqlHandle, 32); SpielerAutoInfo[playerid][slot][vehID] = CreateVehicleEx(SpielerAutoInfo[playerid][slot][saModelID], SpielerAutoInfo[playerid][slot][vehPosX], SpielerAutoInfo[playerid][slot][vehPosY], SpielerAutoInfo[playerid][slot][vehPosZ], SpielerAutoInfo[playerid][slot][vehPosA], SpielerAutoInfo[playerid][slot][saFarbe1], SpielerAutoInfo[playerid][slot][saFarbe2], -1); SpielerAutoInfo[playerid][slot][saKennzeichenFarbe] = cache_get_field_content_int(0, "KennzeichenFarbe"); SpielerAutoInfo[playerid][slot][saKaufPreis] = cache_get_field_content_int(0, "KaufPreis"); SpielerAutoInfo[playerid][slot][saPaintjob] = cache_get_field_content_int(0, "Paintjob"); SpielerAutoInfo[playerid][slot][saVersichert] = cache_get_field_content_int(0, "Versichert"); SpielerAutoInfo[playerid][slot][saAbgeschleppt] = cache_get_field_content_int(0, "Abgeschleppt"); SpielerAutoInfo[playerid][slot][saTankInhalt] = cache_get_field_content_int(0, "TankInhalt"); SpielerAutoInfo[playerid][slot][saBatterie] = cache_get_field_content_int(0, "Batterie"); SpielerAutoInfo[playerid][slot][saMeterStand] = cache_get_field_content_int(0, "MeterStand"); SpielerAutoInfo[playerid][slot][saMotor] = cache_get_field_content_int(0, "Motor"); SpielerAutoInfo[playerid][slot][saLicht] = cache_get_field_content_int(0, "Licht"); SpielerAutoInfo[playerid][slot][saHandbremse] = cache_get_field_content_int(0, "Handbremse"); SpielerAutoInfo[playerid][slot][saTagesMeterStand] = cache_get_field_content_int(0, "TagesMeterStand"); SpielerAutoInfo[playerid][slot][saFRadio] = cache_get_field_content_int(0, "FRadio"); SpielerAutoInfo[playerid][slot][saZustand] = cache_get_field_content_int(0, "Zustand"); SpielerAutoInfo[playerid][slot][saMod1] = cache_get_field_content_int(0, "Mod1"); SpielerAutoInfo[playerid][slot][saMod2] = cache_get_field_content_int(0, "Mod2"); SpielerAutoInfo[playerid][slot][saMod3] = cache_get_field_content_int(0, "Mod3"); SpielerAutoInfo[playerid][slot][saMod4] = cache_get_field_content_int(0, "Mod4"); SpielerAutoInfo[playerid][slot][saMod5] = cache_get_field_content_int(0, "Mod5"); SpielerAutoInfo[playerid][slot][saMod6] = cache_get_field_content_int(0, "Mod6"); SpielerAutoInfo[playerid][slot][saMod7] = cache_get_field_content_int(0, "Mod7"); SpielerAutoInfo[playerid][slot][saMod8] = cache_get_field_content_int(0, "Mod8"); SpielerAutoInfo[playerid][slot][saMod9] = cache_get_field_content_int(0, "Mod9"); SpielerAutoInfo[playerid][slot][saMod10] = cache_get_field_content_int(0, "Mod10"); SpielerAutoInfo[playerid][slot][saMod11] = cache_get_field_content_int(0, "Mod11"); SpielerAutoInfo[playerid][slot][saMod12] = cache_get_field_content_int(0, "Mod12"); SpielerAutoInfo[playerid][slot][saMod13] = cache_get_field_content_int(0, "Mod13"); SpielerAutoInfo[playerid][slot][saMod14] = cache_get_field_content_int(0, "Mod14"); SpielerAutoInfo[playerid][slot][saPanels] = cache_get_field_content_int(0, "Panels"); SpielerAutoInfo[playerid][slot][saDoors] = cache_get_field_content_int(0, "Doors"); SpielerAutoInfo[playerid][slot][saLights] = cache_get_field_content_int(0, "Lights"); SpielerAutoInfo[playerid][slot][saTires] = cache_get_field_content_int(0, "Tires"); SpielerAutoInfo[playerid][slot][saPanzerung] = cache_get_field_content_int(0, "Panzerung"); SpielerAutoInfo[playerid][slot][saAutogas] = cache_get_field_content_int(0, "Autogas"); SpielerAutoInfo[playerid][slot][saGPSSystem] = cache_get_field_content_int(0, "GPSSystem"); } return 1; }
[21:09:33] [ERROR] cache_get_field_content_int - invalid datatype
[21:09:33] [ERROR] cache_get_field_content_int - invalid datatype
[21:09:33] [ERROR] cache_get_field_content_int - invalid datatypeWas meint er den damit?
-
Hat jemand da einen Tipp, wie ich diesen Block hier mit ternären Operatoren ausdrücken kann?
Hier mein Vorschlag
return (!tmp) ? INVALID_PLAYER_ID : randoms[(idx>tmp)?0:((idx<0)?(tmp-1):idx)];
//Edit: Hatte hier was übersehen
Was meint er den damit?
Du wendest z.B. cache_get..._int auf einen String oder einen Float an
-
Er zeigt mir den fehler weiterhin an habe nur 4 sachen mit float....
Code
Alles anzeigenforward LoadPlayerVehicles(playerid, slot); public LoadPlayerVehicles(playerid, slot) { new result[25], rows, fields; cache_get_data(rows, fields); if(rows) { cache_get_field_content(0, "Besitzer", result); format(SpielerAutoInfo[playerid][slot][saBesitzer], 25, result); SpielerAutoInfo[playerid][slot][saModelID] = cache_get_field_content_int(0, "ModelID"); SpielerAutoInfo[playerid][slot][saFarbe1] = cache_get_field_content_int(0, "Farbe1"); SpielerAutoInfo[playerid][slot][saFarbe2] = cache_get_field_content_int(0, "Farbe2"); SpielerAutoInfo[playerid][slot][vehPosX] = cache_get_field_content_float(0, "PosX"); SpielerAutoInfo[playerid][slot][vehPosY] = cache_get_field_content_float(0, "PosY"); SpielerAutoInfo[playerid][slot][vehPosZ] = cache_get_field_content_float(0, "PosZ"); SpielerAutoInfo[playerid][slot][vehPosA] = cache_get_field_content_float(0, "PosA"); SpielerAutoInfo[playerid][slot][saAnmeldungsOrt] = cache_get_field_content_int(0, "AnmeldungsOrt"); cache_get_field_content(0, "KFZNummer", SpielerAutoInfo[playerid][slot][saKFZNummer], sqlHandle, 32); SpielerAutoInfo[playerid][slot][vehID] = CreateVehicleEx(SpielerAutoInfo[playerid][slot][saModelID], SpielerAutoInfo[playerid][slot][vehPosX], SpielerAutoInfo[playerid][slot][vehPosY], SpielerAutoInfo[playerid][slot][vehPosZ], SpielerAutoInfo[playerid][slot][vehPosA], SpielerAutoInfo[playerid][slot][saFarbe1], SpielerAutoInfo[playerid][slot][saFarbe2], -1); SpielerAutoInfo[playerid][slot][saKennzeichenFarbe] = cache_get_field_content_int(0, "KennzeichenFarbe"); SpielerAutoInfo[playerid][slot][saKaufPreis] = cache_get_field_content_int(0, "KaufPreis"); SpielerAutoInfo[playerid][slot][saPaintjob] = cache_get_field_content_int(0, "Paintjob"); SpielerAutoInfo[playerid][slot][saVersichert] = cache_get_field_content_int(0, "Versichert"); SpielerAutoInfo[playerid][slot][saAbgeschleppt] = cache_get_field_content_int(0, "Abgeschleppt"); SpielerAutoInfo[playerid][slot][saTankInhalt] = cache_get_field_content_int(0, "TankInhalt"); SpielerAutoInfo[playerid][slot][saBatterie] = cache_get_field_content_int(0, "Batterie"); SpielerAutoInfo[playerid][slot][saMeterStand] = cache_get_field_content_int(0, "MeterStand"); SpielerAutoInfo[playerid][slot][saMotor] = cache_get_field_content_int(0, "Motor"); SpielerAutoInfo[playerid][slot][saLicht] = cache_get_field_content_int(0, "Licht"); SpielerAutoInfo[playerid][slot][saHandbremse] = cache_get_field_content_int(0, "Handbremse"); SpielerAutoInfo[playerid][slot][saTagesMeterStand] = cache_get_field_content_int(0, "TagesMeterStand"); SpielerAutoInfo[playerid][slot][saFRadio] = cache_get_field_content_int(0, "FRadio"); SpielerAutoInfo[playerid][slot][saZustand] = cache_get_field_content_float(0, "Zustand"); SpielerAutoInfo[playerid][slot][saMod1] = cache_get_field_content_int(0, "Mod1"); SpielerAutoInfo[playerid][slot][saMod2] = cache_get_field_content_int(0, "Mod2"); SpielerAutoInfo[playerid][slot][saMod3] = cache_get_field_content_int(0, "Mod3"); SpielerAutoInfo[playerid][slot][saMod4] = cache_get_field_content_int(0, "Mod4"); SpielerAutoInfo[playerid][slot][saMod5] = cache_get_field_content_int(0, "Mod5"); SpielerAutoInfo[playerid][slot][saMod6] = cache_get_field_content_int(0, "Mod6"); SpielerAutoInfo[playerid][slot][saMod7] = cache_get_field_content_int(0, "Mod7"); SpielerAutoInfo[playerid][slot][saMod8] = cache_get_field_content_int(0, "Mod8"); SpielerAutoInfo[playerid][slot][saMod9] = cache_get_field_content_int(0, "Mod9"); SpielerAutoInfo[playerid][slot][saMod10] = cache_get_field_content_int(0, "Mod10"); SpielerAutoInfo[playerid][slot][saMod11] = cache_get_field_content_int(0, "Mod11"); SpielerAutoInfo[playerid][slot][saMod12] = cache_get_field_content_int(0, "Mod12"); SpielerAutoInfo[playerid][slot][saMod13] = cache_get_field_content_int(0, "Mod13"); SpielerAutoInfo[playerid][slot][saMod14] = cache_get_field_content_int(0, "Mod14"); SpielerAutoInfo[playerid][slot][saPanels] = cache_get_field_content_int(0, "Panels"); SpielerAutoInfo[playerid][slot][saDoors] = cache_get_field_content_int(0, "Doors"); SpielerAutoInfo[playerid][slot][saLights] = cache_get_field_content_int(0, "Lights"); SpielerAutoInfo[playerid][slot][saTires] = cache_get_field_content_int(0, "Tires"); SpielerAutoInfo[playerid][slot][saPanzerung] = cache_get_field_content_int(0, "Panzerung"); SpielerAutoInfo[playerid][slot][saAutogas] = cache_get_field_content_int(0, "Autogas"); SpielerAutoInfo[playerid][slot][saGPSSystem] = cache_get_field_content_int(0, "GPSSystem"); } return 1; }
-
Er zeigt mir den fehler weiterhin
Bist du sicher?
Hast du neu kompiliert und den Server neugestartet -
Bist du sicher?Hast du neu kompiliert und den Server neugestartet
Definitiv
[22:25:02] [ERROR] cache_get_field_content_int - invalid datatype
[22:25:02] [ERROR] cache_get_field_content_int - invalid datatype
[22:25:02] [ERROR] cache_get_field_content_int - invalid datatype -
@Dr. Frauenarzt zeig mal bitte ein Beispiel der Datensaetze (Ausgabe von einem SELECT * FROM)
-
mysql_function_query(sqlHandle, "SELECT * FROM `frakinfo`", true, "OnQueryFinish", "siii", "SELECT * FROM `frakinfo`", _SQL_FRAKTIONEN_LOAD, 0, sqlHandle);
Das ist das wo die fahrzeuge geladen werden sollten...
-
Ich sagte Datensaetze.
-
Ich sagte Datensaetze.
Code
Alles anzeigencase _SQL_ANGELGEBIETE_LOAD: { print(" "), print(TRENNLINIE), printf("[ - SCRIPT - ] | Angelgebiete werden geladen..."); cache_get_data(rows, fields); new lCount, lID = 1, lStart = GetTickCount(); AngelGebietInfo[0][agFischZone] = GangZoneCreate(0.0, 0.0, 0.0, 0.0); if(rows) { while(lCount < rows) { cache_get_field_content(lCount, "ID", lResult), AngelGebietInfo[lID][agDatabaseID] = strval(lResult); cache_get_field_content(lCount, "MinX", lResult), AngelGebietInfo[lID][agMinX] = floatstr(lResult); cache_get_field_content(lCount, "MaxX", lResult), AngelGebietInfo[lID][agMaxX] = floatstr(lResult); cache_get_field_content(lCount, "MinY", lResult), AngelGebietInfo[lID][agMinY] = floatstr(lResult); cache_get_field_content(lCount, "MaxY", lResult), AngelGebietInfo[lID][agMaxY] = floatstr(lResult); cache_get_field_content(lCount, "FischStatus", lResult), AngelGebietInfo[lID][agFischStatus] = strval(lResult); if(AngelGebietInfo[lID][agDatabaseID] >= 1) { AngelGebietInfo[lID][agFischZone] = GangZoneCreate(AngelGebietInfo[lID][agMinX], AngelGebietInfo[lID][agMinY], AngelGebietInfo[lID][agMaxX], AngelGebietInfo[lID][agMaxY]); } lID++; lCount++; } printf("[ - SCRIPT - ] | Angelgebiete erfolgreich in %d Millisekunden geladen!", GetTickCount()-lStart); } }
Zum Beispiel werden die Angelgebiete so geladen.
-
Alter, den Datensatz will ich sehen
Sowas hier:
-
-
Ich seh nicht alles auf dem Bild. Ist in einem Feld ein "NULL"- Wert?
-
-
Wenn Du ein Feld einen "NULL" Wert hat, dann ein cache_get_* machst, dann wirft es dieses Warning. Solltest mal auf die aktuelle MySQL Plugin Version upgraden und dann "cache_is_null" (hiess es glaube ich) machen bevor du cache_get_* machst.