Mein SAMP Server schließt sich immer, wenn ich darauf connecten will!

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 Leute,
    ich habe da ein sehr großes Problem. Ich habe gerade neu angefangen zu scripten und bin auch erst 13 Jahre alt, habe also noch nicht so viel Ahnung davon, möchte das aber gerne lernen. Daher habe ich vor ein paar Tagen angefangen einen eigenen Deathmatch-Server zu erstellen ohne Vorlagen o.Ä. Hat alles wunderbar funktioniert, bis ich an 2 Punkten angekommen bin. Einerseits, wie ich einen Timer erstelle, der nur für die jeweilige Person existiert, wenn ich zum Beispiel ein kleines Krankenhaus bauen will, dass der Player nach 5-10 Sekunden wiederherauskommt, aber "SetTimer" zählt ja für alle, das heißt, wenn der Timer abläuft, soll der Spieler zum Spawn geportet werden, doch dann werden ALLE zum Spawn geportet, aber das will man ja natürlich nicht. 2.Einen Shop. Ich habe mit Pickups einen begehbaren Shop gebaut(mit AmmuNation vergleichbar), aber ich war mir nicht sicher, wie ich erstens dem Player Waffen gebe und ihm Geld entziehe und, wie ich es schaffe dass man Geld pro Kill bekommt. Ich habe ganz lange dran getüftelt, bis ich hier angekommen bin:



    Mein Gamemode(wie gesagt, habe nicht viel Ahnung):


    ---------------------------------------------------------------------------------------------


    #include <a_samp>


    //Farben
    #define ROT 0xFF0005FF
    #define BLAU 0x0005FFFF
    #define GRÜN 0x00FF28FF
    #define GELB 0xFFF000FF
    #define SCHWARZ 0x0F0000FF
    #define WEISS 0xFEFEFEFF


    //Pickups
    new LSPD_Garage;
    new LSPD_Innen;


    new SHOP_Aussen;
    new SHOP_Innen;
    new SHOP;


    //Timer
    forward dead();


    #define DIALOG 1


    main()
    {
    print("\n----------------------------------");
    print(" Deathmatch PRO v1.0 by Markusrunner");
    print("----------------------------------\n");
    }


    public OnGameModeInit()
    {
    SetGameModeText("Deathmatch PRO v1.0");
    AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 24, 999, 0, 0, 0, 0);

    //Autos
    AddStaticVehicle(411,1071.4570,-1699.6622,13.2788,271.0363,0,0); // Shopcar

    //Pickups
    LSPD_Garage=CreatePickup(12391,1,1525.6735,-1677.8470,5.8906);
    LSPD_Innen=CreatePickup(1239,1,246.0013,87.1444,1003.6406);
    SHOP_Aussen=CreatePickup(1239,1,1081.1681,-1697.2141,13.5469);
    SHOP_Innen=CreatePickup(1239,1,315.0938,-141.6844,999.6016);
    SHOP=CreatePickup(1239,1,313.9232,-133.5253,999.6016);

    //3D Text
    Create3DTextLabel("Shop öffnen: /shop", WEISS,313.9232,-133.5253,999.6016,50.0,0);
    return 1;
    }


    public OnGameModeExit()
    {
    return 1;
    }


    public OnPlayerRequestClass(playerid, classid)
    {
    SetPlayerPos(playerid, 1061.9790,-1706.8763,13.5469);
    SetPlayerCameraPos(playerid, 1061.9790,-1706.8763,13.5469);
    SetPlayerCameraLookAt(playerid, 1061.9790,-1706.8763,13.5469);
    return 1;
    }


    public OnPlayerConnect(playerid)
    {
    SendClientMessage(playerid, WEISS, "Herzlich Willkommen auf Deathmatch PRO v1.0");
    SendClientMessage(playerid, ROT, "Zum Starten bitte Spawn anklicken!");
    SendClientMessageToAll(GRÜN, "%s ist dem Server beigetreten!");
    return 1;
    }


    public OnPlayerDisconnect(playerid, reason)
    {
    return 1;
    }


    public OnPlayerSpawn(playerid)
    {
    ShowPlayerDialog(playerid, DIALOG, DIALOG_STYLE_MSGBOX,"Teamwahl", "In welches Team möchtest du?", "LSPD", "Weedlife");
    return 1;
    }


    public OnPlayerDeath(playerid, killerid, reason)
    {
    SetPlayerPos(playerid, -180.4388,1881.0631,115.5666);
    SendClientMessage(playerid, ROT, "Du bist im Gefecht gestorben und musst nun 5s warten bis zum Respawn.");
    SetTimer("dead",5135,false);
    return 1;
    }


    public dead ()
    {
    return 1;
    }


    public OnVehicleSpawn(vehicleid)
    {
    return 1;
    }


    public OnVehicleDeath(vehicleid, killerid)
    {
    return 1;
    }


    public OnPlayerText(playerid, text[])
    {
    return 1;
    }


    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if (strcmp("/shop", cmdtext, true, 10) == 0)
    {
    if(IsPlayerInRangeOfPoint(playerid, 2, 313.9232,-133.5253,999.6016))
    {
    SendClientMessage(playerid, WEISS, "|-----------------Shop------------------|");
    SendClientMessage(playerid, WEISS, "| MP5 $5000 | AK-47 $8000");
    SendClientMessage(playerid, WEISS, "| M4 $7000 | Shotgun $9999");
    SendClientMessage(playerid, WEISS, "| Nighvision $0 | Tec-9 $6000");
    SendClientMessage(playerid, WEISS, "| Samurai $500 | Granate $200");
    SendClientMessage(playerid, WEISS, "| Kettensäge $15000| Sniper $9999");
    SendClientMessage(playerid, WEISS, "| Flammenwerfer 30k| Stinger $30000");
    SendClientMessage(playerid, WEISS, "|-----------------Shop------------------|");
    SendClientMessage(playerid, WEISS, "Waffe kaufen: /buygun [Waffenname]");
    }
    else SendClientMessage(playerid, ROT, "Du bist nicht im Shop!");
    return 1;
    }
    if(strcmp("/buygun MP5", cmdtext, true, 10) == 0)
    {
    GivePlayerWeapon(playerid, 29, 999);
    GivePlayerMoney(playerid, -5000);
    SendClientMessage(playerid, BLAU, "Du hast dir eine MP5 gekauft!");
    }
    return 0;
    }


    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    return 1;
    }


    public OnPlayerExitVehicle(playerid, vehicleid)
    {
    return 1;
    }


    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    return 1;
    }


    public OnPlayerEnterCheckpoint(playerid)
    {
    return 1;
    }


    public OnPlayerLeaveCheckpoint(playerid)
    {
    return 1;
    }


    public OnPlayerEnterRaceCheckpoint(playerid)
    {
    return 1;
    }


    public OnPlayerLeaveRaceCheckpoint(playerid)
    {
    return 1;
    }


    public OnRconCommand(cmd[])
    {
    return 1;
    }


    public OnPlayerRequestSpawn(playerid)
    {
    return 1;
    }


    public OnObjectMoved(objectid)
    {
    return 1;
    }


    public OnPlayerObjectMoved(playerid, objectid)
    {
    return 1;
    }


    public OnPlayerPickUpPickup(playerid, pickupid)
    {
    if(pickupid==LSPD_Garage)
    {
    SetPlayerPos(playerid, 246.4407,87.0352,1003.6406);
    SetPlayerInterior(playerid, 6);
    SetPlayerFacingAngle(playerid, 186.0800);
    SetPlayerCameraLookAt(playerid, 246.4407,87.0352,1003.6406);
    }
    if(pickupid==LSPD_Innen)
    {
    SetPlayerPos(playerid, 1525.8385,-1678.0065,5.8906);
    SetPlayerInterior(playerid, 0);
    SetPlayerFacingAngle(playerid, 269.1604);
    SetPlayerCameraLookAt(playerid, 1525.8385,-1678.0065,5.8906);
    }
    if(pickupid==SHOP_Aussen)
    {
    SetPlayerPos(playerid, 314.6450,-138.9285,999.6016);
    SetPlayerInterior(playerid, 7);
    }
    if(pickupid==SHOP_Innen)
    {
    SetPlayerPos(playerid, 1080.8298,-1699.3242,13.5469);
    SetPlayerInterior(playerid, 0);
    }
    return 1;
    }


    public OnVehicleMod(playerid, vehicleid, componentid)
    {
    return 1;
    }


    public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
    {
    return 1;
    }


    public OnVehicleRespray(playerid, vehicleid, color1, color2)
    {
    return 1;
    }


    public OnPlayerSelectedMenuRow(playerid, row)
    {
    return 1;
    }


    public OnPlayerExitedMenu(playerid)
    {
    return 1;
    }


    public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
    {
    return 1;
    }


    public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
    {
    return 1;
    }


    public OnRconLoginAttempt(ip[], password[], success)
    {
    return 1;
    }


    public OnPlayerUpdate(playerid)
    {
    return 1;
    }


    public OnPlayerStreamIn(playerid, forplayerid)
    {
    return 1;
    }


    public OnPlayerStreamOut(playerid, forplayerid)
    {
    return 1;
    }


    public OnVehicleStreamIn(vehicleid, forplayerid)
    {
    return 1;
    }


    public OnVehicleStreamOut(vehicleid, forplayerid)
    {
    return 1;
    }


    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    if(dialogid==DIALOG)
    {
    if(response==1)
    {
    SetPlayerPos(playerid, 1552.4500,-1674.9900,16.1953);
    SendClientMessage(playerid, BLAU, "Du bist erfolgreich dem LSPD beigetreten!");
    SendClientMessageToAll(GRÜN, "%s ist ins LSPD-Team gejoint!");
    }
    if(response==0)
    {
    SetPlayerPos(playerid, -535.9517,-505.6262,25.5234);
    SetPlayerFacingAngle(playerid, 6.3453);
    SendClientMessage(playerid, BLAU, "Du bist erfolgreich Weedlife beigetreten!");
    SendClientMessageToAll(GRÜN, "%s ist ins Weedlife-Team gejoint!");
    }
    }
    return 1;
    }


    public OnPlayerClickPlayer(playerid, clickedplayerid, source)
    {
    return 1;
    }
    ---------------------------------------------------------------------------------
    Doch nachdem ich das "GivePlayerWeapon" gemacht habe komme ich nicht mehr auf den Server, habe es nochmal weggemacht, nichts bringt etwas. Ich starte den Server. Alles funzt gut, doch wenn ich drauf connecten will, steht nur mein "Connect-Text" und dann hängt es sich auf oder auch manchmal "Connected. Joining the game...", wobei es sich ebenfalls aufhängt. Wenn ich dann wieder aus dem Spiel gehe, merke ich, dass die Serverkonsole nicht mehr geöffnet ist und der Server aus ist. Was ist da los 8| Ich bin im Moment völlig aufgelöst, denn es hat mir so sehr Spaß gemacht und ich habe so viel Zeit darin investiert...
    Bitte helft mir. Bitte ?(
    Übrigens:
    Hier ist noch der Serverlog, wen es interessiert. Sieht eigentlich ziemlich normal aus!




    ----------
    Loaded log file: "server_log.txt".
    ----------


    SA-MP Dedicated Server
    ----------------------
    v0.3e, (C)2005-2012 SA-MP Team


    [22:09:16]
    [22:09:16] Server Plugins
    [22:09:16] --------------
    [22:09:16] Loading plugin: streamer
    [22:09:16]


    *** Streamer Plugin v2.5.2 by Incognito loaded ***


    [22:09:16] Loaded.
    [22:09:16] Loaded 1 plugins.


    [22:09:17]
    [22:09:17] Filterscripts
    [22:09:17] ---------------
    [22:09:17] Loading filterscript 'Weedlife.amx'...
    [22:09:17]
    --------------------------------------
    [22:09:17] Weedlifers by Markusrunner
    [22:09:17] --------------------------------------


    [22:09:17] Loaded 1 filterscripts.


    [22:09:17]
    ----------------------------------
    [22:09:17] Deathmatch PRO v1.0 by Markusrunner
    [22:09:17] ----------------------------------


    [22:09:17] Number of vehicle models: 19
    [22:09:36] Incoming connection: (für euch uninteressant :D)
    [22:09:37] [join] Markusrunner has joined the server (0:94.219.115.171)
    -----------------------------------------------------------------------------------------
    Compiler spuckt auch nur ein Warning wegen dem "Shop-Pickup" aus, da es keinen Sinn hat, aber ich will halt auch nur, dass da ein "i" ist, sodass man sieht, dass dort etwas ist.
    Compiler:
    ------------------------------

    C:\Users\Markus\Desktop\San Andreas Server\Deathmatch-Selfmade\gamemodes\DM.pwn(44) : warning 204: symbol is assigned a value that is never used: "SHOP"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    1 Warning.
    -------------------------------
    Zeile 44(Problemzeile): SHOP=CreatePickup(1239,1,313.9232,-133.5253,999.6016);
    aber daran, kann es nicht liegen, da es erstens "nur" ein Warning ist und der Warning schon lange da ist und es immer funktioniert hat :wacko:

    Weiterer Anhang: Bei jedem Player, der connecten will, schließt sich die Konsole... -.-