Beiträge von SmD

    Ich würde eine variable mit einem array machen, in der der abgespeichert wird, ob die virtuelle welt schon belegt ist.
    Dazu brauchst du erstmal die var selbst, die du oben ins script schreibst, hier z.b.:


    new bool:weltbelegt[MAX_PLAYERS];


    Unter onplayerconnect musst du dann mittels for schleife überprüfen, welche virtuelle welt frei ist und musst ihn dann dieser zuteilen



    for(new i = 0; i<MAX_PLAYERS; i++)
    {
    if(weltbelegt[i] == false)
    {
    SetPlayerVirtualWorld(playerid,i);
    weltbelegt[i] = true;
    break; //um die schleife jetzt zu beenden
    }
    }


    Natürlich musst du die virtuelle welt nach verlassen des spielers unter onplayerdisconnect wieder "freigeben":



    weltbelegt[GetPlayerVirtualWorld(playerid)] = false;



    Ich hoffe ich konnte dir ein wenig helfen...sry wenns ned bugfrei is ;)


    Mfg

    ocmd:givegun(playerid,params[])
    {
    new waffe,munition;
    if(sscanf(params,"ii",waffe,munition)) return SendClientMessage(playerid,0xFFFFFFFF,"Info: /givegun [Waffen-ID] [Munition]");
    if(waffe == 38 || waffe == 39) return SendClientMessage(playerid,0xFF0000FF,"Diese Waffen kannst du dir nicht geben!");
    GivePlayerWeapon(playerid,waffe,munition);
    SendClientMessage(playerid,0xFFFFFFFF,"Du hast dir eine Waffe gegeben!");
    return 1;
    }


    das jetzt so als ocmd beispiel

    die zeile mit den showplayerdialog ist schlicht weg einfach zu lang, du könntest es beheben, indem du z.b. nach dem "koloss Navi" einmal auf enter drückst und in den rest in die nächste zeile verfrachtest. Du könntest aber z.b. auch variablen erstellen, in denen du jeweils einen teil des textes unterbringst, erstellen, die du dann wieder zu einer einzigen variable zusammenfügst und dann im showplayerdialog verwendest

    du sagst das wenn das auto nichtin der nähe ist dass er eine fehlermeldung bringen soll. hier liegt der fehler. da er ja durch alle autos loopt ist immer ein auto nicht in deiner nähe. du musst also statt das return Fehlermeldung einfach ein continue hin machen damit er einfach die schleife weiterführt

    new query[256];
    format(query,sizeof(query),"UPDATE spieler SET Haus='%i' WHERE PName='%s'",HausInfo[h][hID],playername);
    mysql_query(query);



    ich empfehle dir nochmal ein tutorial zu deinem mysql plugin und allgemein zu mysql anzuschauen

    Du kannst PVars mit GetPVarInt bei Zahlen, GetPVarString bei allen möglichen zeichen (wie ein Text) oder GetPVarFloat (z.b. Koordinaten) aufrufen, falls du das meinst. Oder meinst du wie du Daten aus einer Datenbank oder aus Spielerdateien abrufst?

    du müsstest dir ein lied sound etc nehmen, es zurechtschneiden und dann bei einem "musik-filehoster" z.b. kiwi6.com hochladen und dann den streaming link mit playaudiostreamforplayer unter onplayerconnect rei tun

    du hast die variable kasse schon mal ein "level" darüber, also quasi 1 oder mehrere {-Klammern davor benutzt (ist schwer zu erkären), verwendet. Kurz: du musst den namen der variable ändern, dann sollten die meisten anderen errors weggehen

    also am script sollte es eigentlich nicht liegen, da es bei windows und linux keinen unterschied macht. es könnte höchstens z.b. an streamer plugins o.ä. liegen, die nicht geladen werden, weil sie mit der linux version nicht kompatibel sind.