Beiträge von Addickted


    Problem besteht weiterhin. Weiss wirklich niemand eine Lösung?

    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


    Header size: 4520 bytes
    Code size: 126760 bytes
    Data size: 77756 bytes
    Stack/heap size: 16384 bytes; estimated max. usage=20761 cells (83044 bytes)
    Total requirements: 225420 bytes


    Warum steht das auf einmal im Compiler?

    Ich brauch grad kurz Hilfe, ich bin zu müde wo ist der Fehler hier?


    ocmd:createinfo(playerid,params[])
    {
    new Float:posx,Float:posy,Float:posz,string[64],text[64];
    GetPlayerPos(playerid,posx,posy,posz);
    if(sscanf(params,"s",string)) return SendClientMessage(playerid,COLOR_YELLOW,"Benutze /createinfo [Text)");
    CreatePickup(1239,1,posx,posy,posz,-1);
    format(string,sizeof(string),"%s",text);
    Create3DTextLabel("%s",COLOR_YELLOW,posx, posy, posz+0.5,40.0,0);
    return 1;
    }


    Wie kriege ich den Eingegeben String in das Textlabel?

    Ich arbeite derzeit an meiner Whitelist in Verbindung mit dem Dateisystem DINII. Meine Whitelist ist so aufgebaut das man eine Datei mit den Spielernamen und den Level 1 haben muss, ansonsten wird man wieder gekickt.


    Kann mir einer sagen wie eine solche Abfrage aussehen müsste? Ich habe eine erstellt, allerdings funktioniert sie nicht 100 Prozentig.


    new pName[MAX_PLAYER_NAME], save[128];
    GetPlayerName(playerid,pName,sizeof(pName));
    format(save,sizeof(save),"/Spieler/%s.ini",pName);
    if(!dini_Exists(save))
    {
    SendClientMessage(playerid,COLOR_RED,"Du stehst nicht auf der Whitelist");
    Kick(playerid);
    }
    if(dini_Exists("/Spieler/%s.ini"))
    {
    if(dini_Exists(save))
    {
    sInfo[playerid][level] = dini_Int(save,"level");
    if(sInfo[playerid][level] ==0)
    {
    SendClientMessage(playerid,COLOR_RED,"Du stehst nicht auf der Whitelist");
    Kick(playerid);
    }
    }
    }

    Das habe ich noch nicht direkt ausprobiert, aber dürfte normal gehen.


    Stock mittels OCMD aufgerufen


    ocmd:gmx(playerid,params[])
    {
    if(!IsPlayerAdmin(playerid))
    {
    SendClientMessage(playerid,COLOR_RED,"Info: Du bist kein Admin!");
    }
    else
    {
    SpielerdatenSpeichern(playerid);
    }
    return 1;
    }
    stock SpielerdatenSpeichern(playerid)
    {
    new pName[MAX_PLAYER_NAME], save[128],Float:hp,Float:ap;
    GetPlayerName(playerid, pName, sizeof(pName));
    GetPlayerHealth(playerid,hp);
    GetPlayerArmour(playerid,ap);
    format(save, sizeof(save), "/Spieler/%s.ini", pName);


    dini_IntSet(save, "geschlecht", sInfo[playerid][geschlecht]);
    dini_IntSet(save, "alter", sInfo[playerid][alter]);
    sInfo[playerid][skin] = GetPlayerSkin(playerid);
    dini_IntSet(save, "skin", sInfo[playerid][skin]);
    sInfo[playerid][geld] = GetPlayerMoney(playerid);
    dini_IntSet(save, "geld", sInfo[playerid][geld]);
    sInfo[playerid][wanteds] = GetPlayerWantedLevel(playerid);
    dini_IntSet(save, "wanteds", sInfo[playerid][wanteds]);
    dini_IntSet((save), "health", floatround(hp));
    dini_IntSet((save), "armour", floatround(ap));


    SendRconCommand("Gmx");
    for (new Text = 0; Text < 50; Text++)
    {
    SendClientMessageToAll(COLOR_GREY," ");
    }
    SendClientMessageToAll(COLOR_GREEN, "Der Server wird neugestartet! \nBitte warten...");
    }


    Wie schon gesagt bei einem normalen Disconnect wird die Energie/Armour korrekt gespeichert und bei Connect bzw. Spawn auch richtig wieder aufgerufen.

    Wenn ich meinen Gamemode mittels GMX neustarte, habe ich nachdem Login das folgende Probleme:


    Ich bin Tot und zwar in einer SCHLEIFE. Man kann es nicht unterbrechen.


    Meine Frage hat jemand eine konkrete Ahnung woran sowas liegen könnte.


    Achja ich arbeite mit Dini und lass bei Disconnect, sowie in einem Stock die Daten speichern. Health und Armour runde ich zu einem Integer und lasse diesen Speichern und wieder aufrufen.


    Dieser Bug tritt nur beim GMX auf und nicht bei einem normalen Reconnect. Ich habe auch schon versucht mittels einer Gegenschleife die Energie hochzusetzen auf 100, allerdings klappt das auch nicht.

    Moin Fischis,


    ich wollt einen Rcon Command machen mit dem es mir möglich ist anderen Spieler verschiedene Level zuzuweisen. Jeder User hat im Scriptfiles Ordner eine Datei in der der Level eingetragen werden soll. Das Level ist oben in einem Enum erstellt.

    enum SpielerInfo
    {
    skin,
    level
    }


    new sInfo[MAX_PLAYERS][SpielerInfo];

    ocmd:setadmin(playerid,params[])
    {


    // 0 = Gebannt
    // 1 = Spieler
    // 2 = Supporter
    // 3 = Co-Admin
    // 4 = Admin
    new spieler,alevel;
    if(!IsPlayerAdmin(playerid)) SendClientMessage(playerid,COLOR_RED,"Info: Du bist kein Admin!");
    else
    {
    if(sscanf(params,"ui",spieler,alevel)) return SendClientMessage(playerid,COLOR_YELLOW,"Benutze: /setadmin [SpielerID][User-Level]");
    new pName[MAX_PLAYER_NAME], save[200];
    GetPlayerName(playerid, pName, sizeof(pName));
    format(save, sizeof(save), "/Spieler/%s.ini", pName);


    dini_IntSet(save, "level", sInfo[playerid][level]);
    }
    return 1;
    }


    Nun weiss ich allerdings echt nicht mehr weiter. Wie bekomme ich das hin?

    Also ich nochmal und zwar eine Frage, ich habe mir folgenden Befehl erstellt (wird noch erweitert):


    ocmd:savecarspawn(playerid,params[])
    {
    if(IsPlayerInAnyVehicle(playerid))
    {
    new Float:vx,Float:vy,Float:vz,vehicleid,vehiclemodel;
    new name[128],save[128];
    vehicleid = GetPlayerVehicleID(playerid);
    vehiclemodel = GetVehicleModel(vehicleid);
    GetVehiclePos(vehicleid,vx,vy,vz);
    GetPlayerName(playerid,name,sizeof(name));
    format(save,sizeof(save),"/Spieler/%s.ini",name);
    if(dini_Exists(save))
    {
    dini_FloatSet(save,"vX",vx);
    dini_FloatSet(save,"vY",vy);
    dini_FloatSet(save,"vZ",vz);
    dini_IntSet(save,"vID",vehicleid);
    dini_IntSet(save,"vModel",vehiclemodel);
    SendClientMessage(playerid,COLOR_GREEN," Dein Fahrzeug wurde erfolgreich geparkt.");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du musst im Fahrzeug sitzen um diese Befehl zu machen");
    }
    return 1;
    }


    Die benötigen Daten wurden auch erfolgreich gespeichert, nun soll dieses Fahrzeug aber nach GMX oder nachdem es einen Totalschaden hat am vorher gespeicherten Spawn wieder erscheinen. Ich finde jedoch keine Funktion, oder ich bin grad blind, die es mir ermögtlicht, die VehicleID, die ModelID und die gespeicherten Koordinaten wieder aufzurufen. Habt ihr da Hilfe für mich?

    Moin Bratfischis,


    mein Kollege und ich haben bei unserem Script ein Problem. Wir haben uns (als Scriptinganfänger) mal an ein Enum gesetzt. Dort haben wir folgendes eingetragen:


    enum SpielerInfo
    {
    geschlecht,
    alter,
    skin,
    wanteds,
    //level,
    geld,
    eingeloggt,
    Float: spx,
    Float: spy,
    Float: spz,
    firstspawn
    }


    new sInfo[MAX_PLAYERS][SpielerInfo];


    Nun haben wir den CMD /savespawn erstellt:


    ocmd:savespawn(playerid,params[])
    {
    new name[128], save[128];
    new Float:spX,Float:spY,Float:spZ;
    GetPlayerPos(playerid,spX,spY,spZ);
    GetPlayerName(playerid,name,sizeof(name));
    format(save,sizeof(save),"/Spieler/%s.ini",name);
    if(dini_Exists(save))
    {
    SendClientMessage(playerid,COLOR_GREEN,"Info: Neuen Spawn gesetzt");
    dini_FloatSet(save,"spx",spX);
    dini_FloatSet(save,"spy",spY);
    dini_FloatSet(save,"spz",spZ);
    }
    return 1;
    }


    In der Datei werde diese auch eingetragen. Allerdings nicht wieder ausgelesen bzw. geändert nachdem Spawn.


    Zum Auslesen haben wir unter OnPlayerConnect geschrieben:


    new pName[MAX_PLAYER_NAME], save[128];
    GetPlayerName(playerid,pName,sizeof(pName));
    format(save,sizeof(save),"/Spieler/%s.ini",pName);


    if(!dini_Exists(save))
    {
    ShowPlayerDialog(playerid, DIALOG_REGISTER1, DIALOG_STYLE_INPUT, "Registrierung", "Gebe hier dein gewünschtes Passwort ein:", "OK", "Abbrechen");
    }
    else
    {
    ShowPlayerDialog(playerid, DIALOG_LOGIN1, DIALOG_STYLE_INPUT, "Login", "Gebe bitte hier dein Passwort ein:", "OK", "Abbrechen");
    SetPlayerSkin(playerid,dini_Int(save,"skin"));
    SetPlayerWantedLevel(playerid,dini_Int(save,"wanteds"));
    GivePlayerMoney(playerid,dini_Int(save,"geld"));
    SetPlayerPos(playerid,dini_Float(save,"spx"),dini_Float(save,"spy"),dini_Float(save,"spz"));
    }
    return 1;


    Also man Spawnt nun mit unseren eingestellten Noobskin am Bahnhof in LV. Wir haben momentan keine FirstSpawn Abfrage drin.
    Woran kann das liegen das die Position nicht umgeändert wird?

    Ich komme leider nicht drauf wie man meine Idee realisieren könnte, daher frage ich euch und zwar möchte ich das Autos die einen Motorschaden haben, ganz normal da wo sie gespeichert sind spawnen, aber ihren Schaden behalten.


    Sprich wenn ein Auto explodiert, soll es mit dem zuvor erzeugten Schaden wieder an den Savecoords spawnen mit dem Schaden von vorher.

    Hallo Zockergemeinde,


    ich möchte euch hiermit mein Projekt MGC vorstellen. Im Multi Gaming Clan zocken wir verschiedene Spiele von Zockern für Zocker. Momentan bieten wir folgende Server an:


    Call of Duty-Modern Warfare
    Minecraft
    San Andreas Multiplayer (in Arbeit, Beta vorhanden)


    Geplant:
    Minecraft PvP
    GTA IV MP


    Zudem haben wir 2 TS-Server und natürlich ein Forum.


    Zur Zeit haben wir 110 Mitglieder, der TS ist ebenfalls immer gut besucht. Wir betreiben nicht nur eigene Server, sondern wir spielen auch auf anderen Servern, Zusammenhalt eingeschlossen. Ein weiterer Aspekt ist, dass wir verschiedene Browsergames spielen und testen. Ein Beispiel ist zum einen das Spiel Grepolis, indem wir eine eigene Allianz haben und gegenseitiger Rückhalt natürlich selbstverständlich ist. Ein anderes Beispiel ist das Spiel The West, wo wir eine eigene Stadt gegründet haben.


    Nun zum Forum:
    Das Forum ist Anlaufstelle der Mitspieler. Wir bieten ein schön gestaltetes WBB Forum mit Lizenz. Jedem Mitglied von MGC ist es möglich, einen eigenen Bereich im Forum zu bekommen, so werden laufend neue Spiele und Browsergames dort vorgestellt. Zudem gibt es im Forum Ankündigungen, wenn ein Event ansteht. Das letzte Event war eine online Poker-Runde, was sehr viel Spaß gemacht hat.


    Habt ihr Spaß am zocken, so kommt doch einfach mal vorbei.
    Startseite - MGC - Multi Gaming Clan