Beiträge von Kaliber

    Wie soll es sich denn bewegen wenns 'n .png Bild ist? xD


    Logischerweise gar nicht :rolleyes:


    Aber es muss schon ein enormer Zufall sein, wenn man das Bild schießt und alle Rotationsachsen auf 0 sind von dem Pickup oder Objekt...


    Zudem steht er genau daneben und nicht drinnen oder sonst was...


    PS: Im Endeffekt ist es ja auch egal, nur diese Indizien sprechen gegen ein Pickup :P


    mfg. :rolleyes:

    Danke, das Pickup wird angezeigt, aber das Label nicht


    Muss es aber :rolleyes:


    Du kannst ja zum test nochmal eins seperat erstellen, mit den korrekten Daten ;)


    Wenn es nicht angezeigt wird, liegt es daran, dass du in einer anderen Virtuellen Welt bist.


    mfg. :whistling:

    Kaliber: ist doch ein Pickup.
    ich brauche den namen der .dff


    Was redest du da?


    Nein ist es nicht, es ist ein einfaches Objekt und auch nichts gemoddetes :wacko:


    Einfach CreateObject(3056,x,y,z,0,0,0); und hier x,y,z mit der Position von dir ersetzen und schon steht da genau dieser Magnethufeisen :rolleyes:


    mfg. :thumbup:

    Nutze hierfür keine Funktion, sondern ein Makro das wäre besser:


    #define CreateInfoPoint(%0,%1,%2,%3,%4,%5) \
    AddStaticPickup(1239, 1, %1, %2, %3, %4),Create3DTextLabel(%5, %0, %1, %2, %3, 40.0, %4, 1)


    CreateInfoPoint(0x00FF28FF,1641.0298,44.7552,37.4469,0,"/essen");


    //Edit: Nur für die, die es interessiert der Fehler liegt bei dem const Parameter, mach das const weg, dann kannst du es auch in dieser Funktion verwenden ;)


    mfg. :thumbup:

    Ich würde dir die ARNPC Version nicht so empfehlen. Natürlich, das Include ist nicht schlecht, aber das Plugin was dahinter steht...ist nicht so der hit. Nun, wie du schon festgestellt hast, es gibt keine Interior Funktion für den Bot. Es ist allgemein nicht so konform und läuft fehlerfrei. Aus diesem Grund würde ich dir, wenn du es auf deinem Server nutzen willst abraten.


    Eine weit aus bessere Alternative wäre das FCNPC Plugin, welches dir mehr Möglichkeiten bietet (auch eine Interior Funktion) und "flüssiger" läuft.


    mfg. :thumbup:

    Du musst es so haben:


    //Oben im Script:
    new pName[MAX_PLAYERS][MAX_PLAYER_NAME];


    //Unter OnPlayerConnect
    GetPlayerName(playerid,pName[playerid],MAX_PLAYER_NAME);


    //Und in einem Befehl / Funktion so benutzen:
    pName[playerid]


    mfg. :thumbup:

    Hatte mal ein ähnliches Problem mit meinem Report-System.
    Das hat mir sehr dabei geholfen: MAX_PLAYERS - Dialog


    Das ist eigentlich eine Speicherverschwendung einen zweidimensionalen Array zu erstellen mit jeweils 500 Feldern ist hier etwas sinnlos :whistling:


    format(carstring,sizeof(carstring),"%s%s Slot: %d\n",carstring,GetVehicleName(cInfo[i][id_x]),cInfo[i][slot]); //slot (Variable) natürlich anpassen!


    //Wenn man das so macht, kann man dies einfach splitten
    //Schreib dir unten folgende Funktion ins Script
    stock GetSlotFromString(const string[]) {
    new pos = strfind(string,":"),buffer[2];
    if(pos == -1) return -1;
    strmid(buffer,string,pos+2,strlen(string),sizeof buffer);
    return strval(buffer);
    }


    //Nutzen kannst du es unter OnDialogResponse so:
    new slot = GetSlotFromString(string); //Dann hast du den Slot vom den Auto und kannst damit arbeiten


    mfg. :thumbup:

    Hat funktioniert, wollte halt auch noch machen wenn man es anklickt werden Sachen wie Position des Fahrzeuges angezeigt, nur wie bekomme ich herraus welches Fahrzeug man angeklickt hat ?


    Entweder du prüfst, welches listitem es war und wenn du chronologisch es auflistest, hast du den Slot von dem Auto.
    Oder du gibst den Slot noch mit an und splitte dann den inputtext (bei OnDialogResponse steht im inputtext der string, den er angeklickt hat) nach dem Slot auf, dann weißt du welches Fahrzeug er angeklickt hat ;)


    mfg. :thumbup:

    Der String wird halt immer wieder neu formatiert, aber wie mache ich es anders ?


    Als erstes in deiner if-Abfrage vergleichst du 2 Strings miteinander, dass musst du in Pawn mit strcmp machen und so kannst du es anders machen:


    CMD:mycars(playerid)
    {
    new carstring[800];
    for(new i=0;i<sizeof(cInfo);i++){
    if(!cInfo[i][id_x] || strcmp(cInfo[i][besitzer],sInfo[playerid][id0]))continue;
    format(carstring,sizeof(carstring),"%s%s\n",carstring,GetVehicleName(cInfo[i][id_x]));
    }
    ShowPlayerDialog(playerid,80,DIALOG_STYLE_LIST,"Owned cars:",carstring,"Select","Close");
    return 1;
    }


    PS: Da du params[] nicht brauchst, musst du es nicht oben angeben ;)


    mfg. :thumbup:

    Ps: Ich weiß das Kaliber ein guter Scripter ist da er mir schon öfters bei pannen im Script geholfen hatt, er ist echt fix und erkennt schnell wo z.b der Fehler liegt, Desweiteren scriptet er Platzsparend!


    Danke ;)


    Ich gebe mein bestes, falls noch Leute Hilfe benötigen, einfach PN schreiben ;)


    mfg. :thumbup:


    //Edit: Push
    //Edit²: Rechtschreibung
    //Edit³: Ich würde mich mal wieder ein wenig anbieten :P