Pickups extern speichern?

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
  • Hey, ich wollte anfangen Dynamisch zu scripten..
    allerdings weis ich nicht wie folgendes funzt...


    Man tippt: /x ein, ein Pickup wird erstellt, wenn man dort /e eingibt wird ein Dialog angezeigt für den BSN mit dem essen usw.


    Das macht man nun in allen BS's ...


    Wie frage ich nun ab, ob er an dieser position ist also alle posis werden aus der externen datei gelesen aber wie nun dass er auch weis, ah da ist der spieler dann zeige ich den dialog...


    nur ein beispiel psl^^


    (sry für die schlechte erklärung?)

    Die deutsche Rechtschreibung ist Freeware, sprich du darfst sie kostenlos nutzen...
    Sie ist aber nicht Open Source, somit darfst du sie nicht verändern oder in veränderter Form veröffentlichen!


  • ich arbeite mit mysql und da habe ich halt mehrere tabellen , eine tabelle für pickups die man mit enter betreten kann eine tabelle wo dann ein dialog kommt ;)


    enum picks{
    Float:eX,
    Float:eY,
    Float:eZ,
    Float:cX,
    Float:cY,
    Float:cZ,
    Rueck,
    Virtualworld,
    pickupobjekt,
    pickID,
    Zielwelt
    }
    new PickUpsCoords[PICK_UPS][picks];
    new pickcount;
    new Pickpick[PICK_UPS];


    z.B sowas


    und bei mysql musst du das auslesen


    public LoadPickups(i)
    {
    new query[256];
    new data[255];
    format(query,sizeof(query),"SELECT * FROM `pickups` WHERE `ID`='%d'",i);
    mysql_query(query);
    mysql_store_result();
    if(mysql_num_rows())
    {
    mysql_fetch_field("eX",data);
    PickUpsCoords[i][eX]=floatstr(data);
    mysql_fetch_field("eY",data);
    PickUpsCoords[i][eY]=floatstr(data);
    mysql_fetch_field("eZ",data);
    PickUpsCoords[i][eZ]=floatstr(data);
    mysql_fetch_field("cX",data);
    PickUpsCoords[i][cX]=floatstr(data);
    mysql_fetch_field("cY",data);
    PickUpsCoords[i][cY]=floatstr(data);
    mysql_fetch_field("cZ",data);
    PickUpsCoords[i][cZ]=floatstr(data);
    mysql_fetch_field("Virtualworld",data);
    PickUpsCoords[i][Virtualworld]=strval(data);
    mysql_fetch_field("pickupobjekt",data);
    PickUpsCoords[i][pickupobjekt]=strval(data);
    mysql_fetch_field("ID",data);
    PickUpsCoords[i][pickID]=strval(data);
    mysql_fetch_field("Zielwelt",data);
    PickUpsCoords[i][Zielwelt]=strval(data);
    Pickpick[i]=CreatePickup(PickUpsCoords[i][pickupobjekt],1,PickUpsCoords[i][eX],PickUpsCoords[i][eY],PickUpsCoords[i][eZ],PickUpsCoords[i][Virtualworld]);
    pickcount=i;
    mysql_free_result();


    }
    return 1;


    }


    und dann musst du halt ne variable machen , dass er auf dem Pickup steht


    for(new i = 0;i<PICK_UPS;i++)
    {
    if(pickupid == Pickpick[i])
    {
    StehtaufPickUp[playerid] = pickupid;
    return 1;
    }


    }



    das war halt mein erster Versuch ^^ (mit hilfe von 8D sein Beitrag), jetzt habe ich es schon besser gemacht bin aber am Laptop und hab da nur das alte ^^ , aber das sollte reichen



    hier noch ein befehl zum erstellen


    ocmd:pickuperstellen(playerid,params[])// Dieser Befehl wäre für pickups die dialoge anzeigen ;)
    {
    new dID;
    if(sscanf(playerid,"d",diD)) return SendClientMessage(playerid,COLOR,"Benutzung /pickuperstellen [DialogID]");
    new Float:dialog_x,Float:dialog_y,Float:dialog_z;
    GetPlayerPos(playerid,dialog_x,dialog_y,dialog_z);
    pickcount++;
    Pickpick[pickcount]= CreatePickUp(model,1,dialog_x,dialog_y,dialog_z);
    PickUpsCoords[pickcount]//hier halt die enums = machen ;)
    Pickups

    Einmal editiert, zuletzt von zabus ()

  • ich bin grad leicht verwirrt weil das mit mysql ist xD


    //E:


    Kann mir das jemand freundlicherweise machen?
    Ich verstehe davon grade nichts weil's mit MySQL ist.


    Wo steht, dass n Dialog angezeigt wird wenn mans aufnimmt usw? :(


    Ich würds gern so machen


    Ich erstelle mit /x ein Pickup... das wird in datei X gespeichert.
    Dann einen befehl bei dem Pickup /xx, ich weis aber nicht wie ich
    die coords dann abfragen soll

    Die deutsche Rechtschreibung ist Freeware, sprich du darfst sie kostenlos nutzen...
    Sie ist aber nicht Open Source, somit darfst du sie nicht verändern oder in veränderter Form veröffentlichen!


    Einmal editiert, zuletzt von Hijashy ()