Beiträge von #else

    Wenn Du es weg haben möchtest, musst Du mal unter



    public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)


    schauen.
    Darin nach KEY_WALK suchen.. Esseidenn die Taste ist nur aktiv wenn man in nem Fahrzeug sitzt, dann musst Du nach KEY_FIRE schauen.
    Darunter müsste dann irgendwo SetVehicleVelocity stehen.
    Das bewirkt, das das Fahrzeug auf die Geschwindigkeit der Einstellung beschleunigt wird.


    Den ganzen Kram musste dann rausnehmen und gut ist.
    Dann sollte das Fahrzeug nicht mehr 300Km/h fahren wenn man die Taste drückt.


    Mfg
    Hardcore

    Die erste Frage kann ich Dir leider nicht beantworten.
    Würde mich aber auch sehr interessieren.


    Zur 2. Frage, natürlich kann ein Homeserver, welcher auf dem eigenen Computer liegt nicht online sein wenn der Rechner aus ist.
    Sobald der Rechner aus ist, ist die IP nicht mehr aktiv.


    Liebe Grüße
    Hardcore

    Bsp.


    new str[5];
    format(str,5,"%d",id);


    Anstatt id schreibst Du nun bspw.
    s3=mysql_GetInt("players","Level","ID",str);


    Hoffe der Schnipsel gibt Dir nen kleinen Gedankenblitz. ;)

    C:\Users\Maik\Desktop\Sachen\Ronny,s Selfmade\Selfmade!\gamemodes\[SoG]SelfmadeByRonny.pwn(2530) : error 017: undefined symbol "isPlayerAdmin" C:\Users\Maik\Desktop\Sachen\Ronny,s Selfmade\Selfmade!\gamemodes\[SoG]SelfmadeByRonny.pwn(2539) : error 017: undefined symbol "SperreLog"


    Sagt doch alles...
    Entweder hast Du die beiden Funktionen nicht im Script, oder falsch ausgeschrieben.


    Der loose ident. kram ist weil Du falsch eingerückt hast, denke ich..

    Beobachte mal im Client den Ping vom Server..
    Wenn der alle paar Sekunden ungewöhnlich hoch steigt, stimmt wahrscheinlich etwas mit dem Server nicht.


    Das Problem hatte ich nämlich auch bis vor Kurzem, gelöst habe ich es, indem ich den Serverport auf 1310 gestellt habe.. :)

    Dir sollte hier keiner was geben, denn sowas finde ich schon verdammt dreist!


    Normalerweise hast Du ja auch recht..
    Aber naja, jeder wie er will, wenn er denkt er kann mit massig Fragen was vernünftiges aufbauen, bitte, soll er es doch versuchen :D

    Bitteschööön =)



    ocmd:gethere(playerid,params[])
    {
    if(!isPlayerAnAdmin(playerid,3))return SendClientMessage(playerid,HELLROT,"AdmCmd: Du besitzt keine Rechte, um diesen Befehl zu benutzen!");
    {
    new pID;
    if(sscanf(params,"u",pID))
    {
    return SendClientMessage(playerid,COLOR_GREY,"Benutzung: /gethere [PlayerID]");
    }
    if(IsPlayerConnected(pID))
    {
    new Float:cX,Float:cY,Float:cZ;
    GetPlayerPos(playerid,cX,cY,cZ);
    if(IsPlayerInAnyVehicle(pID))
    {
    SetVehiclePos(GetPlayerVehicleID(pID),cX,cY,cZ);
    LinkVehicleToInterior(GetPlayerVehicleID(pID),GetPlayerInterior(playerid));
    }
    SetPlayerPos(pID,cX,cY,cZ);
    SetPlayerInterior(pID,GetPlayerInterior(playerid));
    }
    else return SendClientMessage(playerid,COLOR_GREY,"Der Spieler ist nicht online!");
    }
    else return SendClientMessage(playerid,COLOR_GREY,"Du hast keine Berechtigung diesen Befehl zu nutzen!");
    return 1;
    }


    //Edit: Befehl verändert.. :D

    Ich würde ja jetzt sagen "Ich liebe Dich", aber irgendwie komme ich mir dann ein wenig schwul vor...


    Vielen Dank Schwabbelbabbel *__*


    Und auch vielen Dank an KleinerTeufel, auch Dein Beitrag hat mir sehr geholfen.
    Warten lohnt sich also doch noch. ;)


    Liebste Grüße
    Hardcore

    NPC's werden auch nicht auf der Serverliste verzeichnet?!
    Ist doch dasselbe wie wenn man die Spielerliste vom SAMP-Client anschaut, da sind auch keine NPC's verzeichnet wenn welche auf dem Server sind.


    Dann musst Du wohl über die rcon Konsole kicken, anstatt über die Spielerliste.


    Ich wüsste selber nicht, wieund ob man das fixen kann.... :/


    Mfg,
    Hardcore

    Der Meinung bin ich auch, allgemein GF ist nicht mein Fall... Selfmade.. Das ist die wahre Scriptingkunst.
    Vorallem das öde LoH-Script... Einfach zum in die Tonne kloppen...

    Guten Abend Community,


    ich habe ein Haussystem auf mySQL-Basis gemacht, nun wollte ich fragen, wie ich über das Script von der Tabelle auslesen kann ob z.b das Haus mit der ID 1 erstellt ist?
    Häuser werden nur in die Tabelle geschrieben, wenn eines ingame erstellt worden ist.
    Die ID des Hauses muss man ingame selber eingeben, daher brauche ich diese Abfrage ob ein Haus mit z.b derselben ID schon da ist.


    Ich hoffe ihr versteht was ich meine und könnt mir helfen.



    Liebe Grüße
    Hardcore

    Man eh, wie oft denn noch?!


    Du brauchst an dem Code garnichts verändern!!!!!!!!
    Einfach gegen Deinen ersetzen und gut ist!


    Warum verstehst Du das denn nicht?
    Liest Du nicht richtig??


    Greetz,
    Hardcore

    Guten Abend liebe Community,


    ich probiere nun schon ewig diesen Fehler zu beheben.
    Unzwar geht es um mein Haussystem.


    Wenn ich ein Haus erstelle, erscheint das Pickup und der 3D-Text.
    Ich kann es kaufen und auch wieder verkaufen.


    Erstelle ich nun aber ein zweites Haus, kann ich bei dem 2. Haus nichts dergleichen machen.
    Weder kaufen noch verkaufen.


    Mir wird halt immer gesagt, das ich angeblich nicht an der Position des Hauses bin.
    Woran kann das nun liegen?


    Hier einmal die Codeschnipsel:
    Haus erstellen:

    ocmd:chouse(playerid,params[])
    {
    if(Spieler[playerid][Admin] == 5)
    {
    new id,preis,mieter,int,level;
    if(sscanf(params,"ddddd",id,preis,mieter,int,level))
    {
    return SendClientMessage(playerid,COLOR_GREY,"Benutzung: /chouse [ID] [Preis] [Max.Mieter] [Innenraum] [Kaufbar ab Level..]");
    }
    new Float:pX,Float:pY,Float:pZ;
    GetPlayerPos(playerid,pX,pY,pZ);
    CreateHouse(id,preis,mieter,int,level,pX,pY,pZ);
    SendStringMsg(playerid,COLOR_LIGHTBLUE,"Haus %d erstellt! Preis: %d,Kaufbar ab Level %d und maximal sind %d Mieter erlaubt!",id,preis,level,mieter);
    }
    return 1;
    }


    Stock zum erstellen des Hauses:

    stock CreateHouse(id,preis,mieter,int,level,Float:hX,Float:hY,Float:hZ)
    {
    new SQL[1000];
    format(SQL, sizeof(SQL), "INSERT INTO `Hauser` (`ID`, `Owner`, `Preis`, `Mieter`, `MaxMieter`, `Level`, `Owned`, `Heal`, `Armour`, `Locked`, `EnterX`, `EnterY`, `EnterZ`, `Kasse`, `mPreis`, `Interior`, `World`, `Erstellt` ) VALUES ('%d', '%s', '%d', '%d', '%d', '%d', '%d', '%d','%d','%d','%f','%f','%f','%d','%d','%d','%d','%d')", id, "Staat", preis, 0, mieter, level, 0, 0, 0, 1, hX, hY, hZ, 0, 0, int, id+1,1);
    mysql_query(SQL); //führe den mit "SQL" formatierten String aus
    SaveHaus(id);
    return LoadHaus(id);
    }


    Hier werden die Häuser geladen:

    stock LoadHaus(hID)
    {
    SendStringMsgToAll(COLOR_RED,"Haus %d geladen!",hID);
    new String[5],str[128];
    //new ehouse;
    format(String, sizeof(String), "%d", hID);
    HausInfo[hID][hEnterX] = mysql_GetFloat("Hauser", "EnterX", "ID", String);
    HausInfo[hID][hEnterY] = mysql_GetFloat("Hauser", "EnterY", "ID", String);
    HausInfo[hID][hEnterZ] = mysql_GetFloat("Hauser", "EnterZ", "ID", String);
    HausInfo[hID][Preis] = mysql_GetInt("Hauser", "Preis", "ID", String);
    HausInfo[hID][MaxMieter] = mysql_GetInt("Hauser", "MaxMieter", "ID", String);
    HausInfo[hID][Interior] = mysql_GetInt("Hauser", "Interior", "ID", String);
    HausInfo[hID][World] = mysql_GetInt("Hauser", "World", "ID", String);
    HausInfo[hID][Owned] = mysql_GetInt("Hauser", "Owned", "ID", String);
    HausInfo[hID][Locked] = mysql_GetInt("Hauser", "Locked", "ID", String);
    HausInfo[hID][Kasse] = mysql_GetInt("Hauser", "Kasse", "ID", String);
    HausInfo[hID][Heal] = mysql_GetInt("Hauser", "Heal", "ID", String);
    HausInfo[hID][Armour] = mysql_GetInt("Hauser", "Armour", "ID", String);
    HausInfo[hID][Level] = mysql_GetInt("Hauser", "Level", "ID", String);
    HausInfo[hID][mPreis] = mysql_GetInt("Hauser", "mPreis", "ID", String);
    HausInfo[hID][Mieter] = mysql_GetInt("Hauser", "Mieter", "ID", String);
    HausInfo[hID][Erstellt] = mysql_GetInt("Hauser", "Erstellt", "ID", String);
    format(HausInfo[hID][Owner], 32, mysql_GetString("Hauser", "Owner", "ID", String));
    HausInfo[hID][ID] = mysql_GetInt("Hauser", "ID", "ID", String);
    return printf("Haus %d wurde erfolgreich geladen!",hID);
    }


    Und so sieht die Abfrage aus, ob ich in der Nähe eines Hauses bin:



    stock GetHausPos(playerid,hid,Float:hx,Float:hy,Float:hz)
    {
    new str[5];
    format(str,5,"%d",hid);
    hx = mysql_GetFloat("Hauser", "EnterX", "ID", str);
    hy = mysql_GetFloat("Hauser", "EnterY", "ID", str);
    hz = mysql_GetFloat("Hauser", "EnterZ", "ID", str);
    if(IsPlayerInRangeOfPoint(playerid,4.0,hx,hy,hz))
    {return 1;}
    else return 0;
    }



    /dhouse zum löschen von Häusern (Wie gesagt, funktioniert nur beim 1. erstelltem Haus...)

    ocmd:dhouse(playerid,params[])
    {
    if(Spieler[playerid][Admin] == 5)
    {
    for(new haus=1;haus<MAX_HOME;haus++)
    {
    new str[5];
    format(str,5,"%d",haus);
    new Float:hx,Float:hy,Float:hz;
    if(GetHausPos(playerid,haus,hx,hy,hz))
    {
    KillHaus(haus);
    SendStringMsg(playerid,COLOR_WHITE,"Du hast das Haus von %s gelöscht!",HausInfo[haus][Owner]);
    mysql_SetInt("Accounts","HouseKey", 0, "Name", HausInfo[haus][Owner]);
    HausInfo[haus][Erstellt] = 0;
    new SQL[100];
    format(SQL, sizeof(SQL), "DELETE FROM Hauser WHERE ID = '%d'", haus);
    mysql_query(SQL);
    return 1;
    }
    else
    {
    return SendClientMessage(playerid,COLOR_GREY,"Du musst an dem zu löschendem Haus stehen!");
    }
    }
    }
    else
    {
    return SendClientMessage(playerid,COLOR_GREY,"Du hast keine Berechtigung diesen Befehl zu nutzen!");
    }
    return 1;
    }



    Ich hoffe mir kann jemand bei dem Problem helfen.
    Also, es ist quasi so, das die Daten aus dem array fürs zweite Haus gelöscht werden...
    In der Datenbank stehen aber alle Daten noch korrekt drinne...


    Ich hoffe ich habe es ausreichend erklärt was mein Problem ist.
    Wäre nett, wenn mir jemand mit diesem arg miesen Problem helfen könnte.


    Liebe Grüße
    Hardcore


    //Edit: /buyhouse Befehl+Abfrage eingefügt.
    //Edit2: Rechtschreibung
    //Edit3: || (Sorry... Nu ist aber gut :D)


    //Edit4: Code auf den Neusten Stand gebracht


    //Edit: Push... Hat echt keiner ne Idee woran es liegen könnte? :/