[SAMMELTHREAD] Kleine Scripting Fragen

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
  • Kann es sein, dass du ein Limit erreicht hast? (http://wiki.sa-mp.com/wiki/Limits)


    Kleiner Tipp:
    Wenn du das Objekt nicht anderweitig verwendest, kannst du es so besser 'lösen':
    SetObjectMaterial(CreateObject(19377, 231.98621, 1812.54163, 1023.92413, 0.00000, 0.00000, 0.00000),0, 4981, "wiresetc2_las", "lasunion7", 0xFFFFFFFF);


    L.G.


    Das Limit ist nicht erreicht. Ob ich das nun so schreibe oder nicht ist eig. Egal oder irre ich mich da?

  • Ja, das ist egal. Bei beiden Möglichkeiten kommt am Ende das gleiche heraus, außer das die 2. Möglichkeit in einer Zeile steht.

  • Ja, das ist egal. Bei beiden Möglichkeiten kommt am Ende das gleiche heraus, außer das die 2. Möglichkeit in einer Zeile steht.


    Corvus: Also bei mir geht es ohne Probleme wenn ich den Index (wie gesagt) auf 1 stelle.


    new shint = CreateObject(19377, 231.98621, 1812.54163, 13.92413, 0.00000, 0.00000, 0.00000);
    SetObjectMaterial(shint, 1, 4981, "wiresetc2_las", "lasunion7", 0xFFFFFFFF);



    So sieht das Object standart aus.

  • Bei mir ist das 2. Bild standart ohne Textur.


    Dann hast du das Objekt vielleicht schon texturiert. Oder du hast einen Mod drin, der das so macht.
    Aber du siehst die beiden Bilder ja, genau so sieht es bei mir aus, also muss es das bei dir auch, wenn du keine Mods drin hast und das Objekt nirgends anders schon texturiert hast.


  • Dann hast du das Objekt vielleicht schon texturiert. Oder du hast einen Mod drin, der das so macht.
    Aber du siehst die beiden Bilder ja, genau so sieht es bei mir aus, also muss es das bei dir auch, wenn du keine Mods drin hast und das Objekt nirgends anders schon texturiert hast.


    Habe weder Mod noch irgendwas anderes drin kanns daran liegen das die Objekte ziemlich hoch liegen?

  • Habe weder Mod noch irgendwas anderes drin kanns daran liegen das die Objekte ziemlich hoch liegen?


    Denke nicht, aber du kannst ja mal 1:1 meinen Code verwenden:


    new shint = CreateObject(19377, 231.98621, 1812.54163, 13.92413, 0.00000, 0.00000, 0.00000);
    SetObjectMaterial(shint, 1, 4981, "wiresetc2_las", "lasunion7", 0xFFFFFFFF);


    Ist dann direkt am Boden, wie im Bild.


  • Denke nicht, aber du kannst ja mal 1:1 meinen Code verwenden:


    new shint = CreateObject(19377, 231.98621, 1812.54163, 13.92413, 0.00000, 0.00000, 0.00000);
    SetObjectMaterial(shint, 1, 4981, "wiresetc2_las", "lasunion7", 0xFFFFFFFF);


    Ist dann direkt am Boden, wie im Bild.


    Hab ich ja schon bei mir sieht das dann aus wie immer vielleicht am Wetter?

  • Hab ich ja schon bei mir sieht das dann aus wie immer vielleicht am Wetter?


    Möglich. Versuche mal das Wetter 0 oder 1, das sind die normalsten.


    Du kannst ja auch als Referenz das selbe Objekt nochmal daneben setzen.
    new shint = CreateObject(19377, 231.98621, 1812.54163, 13.92413, 0.00000, 0.00000, 0.00000); //wird texturiert
    SetObjectMaterial(shint, 1, 4981, "wiresetc2_las", "lasunion7", 0xFFFFFFFF);
    CreateObject(19377, 231.98621, 1802.54163, 13.92413, 0.00000, 0.00000, 0.00000); //wird nicht texturiert

  • Ich kabiers einfach nicht...


    Ich habe jetzt den Befehl, habe das System etwas verändert:


    ocmd:createfirma(playerid,params[])
    {
    if(IsPlayerAdmin(playerid))
    {
    new fname[30],fwert,faktien,faktwert,query[200];
    if(sscanf(params,"sdd",fname,fwert,faktien))return SCM(playerid,frot,"[VERWENDUNG]: /createfirma [FirmenName][FirmenWert][Anzahl-Aktien]");
    if(strlen(fname) > 30)return SCM(playerid,frot,"[FEHLER]:Der Firmen Name darf maximal 30 Zeichen betragen!");
    if(fwert > 1000000)return SCM(playerid,frot,"[FEHLER]: Der Wert der Firma darf nicht über 10.000.000€ betragen!");
    if(faktien > fwert)return SCM(playerid,frot,"[FEHLER]: Der Wert der Aktien muss mindestens 1€ betragen! Firmen Wert = Aktien Anzahl");
    faktwert = fwert / faktien;
    mysql_format(db_handle,query,sizeof(query),"INSERT INTO aktien (FirmenName,FirmenWert,AktienAnzahl,AktienWert) VALUES ('%e','%d','%d','%d')",fname,fwert,faktien,faktwert);
    mysql_tquery(db_handle,query);
    return 1;
    }
    return 1;
    }


    Wenn ich das kompiliere stürzt mir mein Compiler ab...
    Compile ich es ohne dem faktwert im new stürzt er nichtmehr ab aber es kommen die Fehlermeldungen:
    C:\Users\Simon_2\Desktop\Aktien System.pwn(300) : error 017: undefined symbol "faktwert"
    C:\Users\Simon_2\Desktop\Aktien System.pwn(300) : warning 215: expression has no effect
    C:\Users\Simon_2\Desktop\Aktien System.pwn(301) : error 017: undefined symbol "faktwert"
    C:\Users\Simon_2\Desktop\Aktien System.pwn(331) : warning 203: symbol is never used: "AktienInfo"


    Und ich weiß nicht warum... Ich kann mir nicht erklären warum es an dem liegen soll :/


    MFG

  • ocmd:createfirma(playerid,params[])
    {
    if(IsPlayerAdmin(playerid))
    {
    new fname[30],fwert,faktien,xyfaktwertxy,query[200];
    if(sscanf(params,"sdd",fname,fwert,faktien))return SCM(playerid,frot,"[VERWENDUNG]: /createfirma [FirmenName][FirmenWert][Anzahl-Aktien]");
    if(strlen(fname) > 30)return SCM(playerid,frot,"[FEHLER]:Der Firmen Name darf maximal 30 Zeichen betragen!");
    if(fwert > 1000000)return SCM(playerid,frot,"[FEHLER]: Der Wert der Firma darf nicht über 10.000.000€ betragen!");
    if(faktien > fwert)return SCM(playerid,frot,"[FEHLER]: Der Wert der Aktien muss mindestens 1€ betragen! Firmen Wert = Aktien Anzahl");
    xyfaktwertxy = fwert / faktien;
    mysql_format(db_handle,query,sizeof(query),"INSERT INTO aktien (FirmenName,FirmenWert,AktienAnzahl,AktienWert) VALUES ('%e','%d','%d','%d')",fname,fwert,faktien,xyfaktwertxy);
    mysql_tquery(db_handle,query);
    return 1;
    }
    return 1;
    }


    Gleiches Ergebnis, Compiler schmiert ab.....


    faktwert wird nur in diesem Befehl verwendet...





    Ich glaube es liegt irgendwo anders.... Wenn ich den Befehl GANZ ausklammere schmiert der compiler trotzdem ab.. (Wenn nur faktwert fehlt geht er auch.. naja)


    Vielleicht is jemand so lieb das ganze FS mal durch zu sehen.. Ist nicht allzu viel.. Ich hab wohl irgendwo einen Fehler..


    http://pastebin.com/CcdhQCJ3

    Einmal editiert, zuletzt von Simon2202 ()

  • Mach den SCM stock raus, der bringt den Compiler zum abstürzen.


    Dann schreibe deinen Befehl so:
    ocmd:createfirma(playerid,params[])
    {
    if(IsPlayerAdmin(playerid))
    {
    new fname[30],fwert,faktien,faktwert,query[200];
    if(sscanf(params,"sdd",fname,fwert,faktien))return SendClientMessage(playerid,frot,"[VERWENDUNG]: /createfirma [FirmenName][FirmenWert][Anzahl-Aktien]");
    if(strlen(fname) > 30)return SendClientMessage(playerid,frot,"[FEHLER]:Der Firmen Name darf maximal 30 Zeichen betragen!");
    if(fwert > 1000000)return SendClientMessage(playerid,frot,"[FEHLER]: Der Wert der Firma darf nicht über 10.000.000€ betragen!");
    if(faktien > fwert)return SendClientMessage(playerid,frot,"[FEHLER]: Der Wert der Aktien muss mindestens 1€ betragen! Firmen Wert = Aktien Anzahl");
    faktwert = fwert / faktien;
    mysql_format(db_handle,query,sizeof(query),"INSERT INTO aktien (FirmenName,FirmenWert,AktienAnzahl,AktienWert) VALUES ('%e','%d','%d','%d')",fname,fwert,faktien,faktwert);
    mysql_tquery(db_handle,query);
    return 1;
    }
    return 1;
    }


    Dann geht's.