Serverside Ammo / Reload

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,
    stelle hier mal meine serverseitige Munition / Nachlade - Include vor..


    Beschreibung
    Wie gesagt, es handelt sich um eine Include für's nachladen und für die Munition.
    Mit der Include ist es möglich, die Nachladezeit zu verringern / erhöhen, sowie die Schüsse im Magazin zu verändern.
    Das heißt, wenn ich der Waffe 'Deagle' 50 Schuss ins Magazin gebe ( das in der Include so gespeichert wurde ), so hab ich anstatt 7 Schuss, 50 Schuss im Magazin, logisch ;)
    Außerdem kann ich die Nachladezeit der Waffe ( falls das Magazin leer ist -> Nachladen ) auf zum Beispiel 3 Sekunden machen, so führt er eine Animation aus, die 3 Sekunden dauert ( Animation nachladen ).
    Außerdem wird ein Textdraw angezeigt, das die Schüsse in der "Tasche" sowie im Magazin anzeigt. ( Siehe Video )


    Dies ist zum Beispiel auch gut gegen Cheater!


    Einstellungen in der Include

    Klicke hier für die Einstellungen
    /* Settings */
    stock Nachladen(playerid,weaponid){
    new time;
    switch(weaponid){
    case 22..24,26..32,37,38,41,42:time = 3; //Ladezeit der Waffen anpassen ( Nachladezeit: 3 Sekunden )
    default:{ //Shotguns, Rifles etc.
    if(s_waffe[playerid][weaponid][0] - GunAmmo(weaponid) <= 0)return RemovePlayerWeapon(playerid,weaponid);
    s_waffe[playerid][weaponid][1] = GunAmmo(weaponid),
    s_waffe[playerid][weaponid][0] -= GunAmmo(weaponid);
    return SetPlayerAmmo(playerid,weaponid,99999);
    }
    }
    SetPlayerAmmo(playerid,weaponid,99999);
    SetTimerEx("_nl",888,false,"iii",playerid,time,weaponid);
    return SetPlayerArmedWeapon(playerid,0);
    }
    stock GunAmmo(weaponid){ //Munitionen der Waffen anpassen! ( im Magazin )
    new muni;
    switch(weaponid){
    case 22:muni = 34;
    case 23:muni = 17;
    case 24:muni = 7;
    case 26:muni = 2;
    case 27:muni = 7;
    case 28:muni = 100;
    case 29:muni = 30;
    case 30:muni = 30;
    case 31:muni = 50;
    case 32:muni = 100;
    case 37:muni = 100;
    case 38:muni = 500;
    case 41:muni = 200;
    case 42:muni = 100;
    default:muni = 1;
    }
    return muni;
    }
    /* Settings */


    Video

    Externer Inhalt www.youtube.com
    Inhalte von externen Seiten werden ohne Ihre Zustimmung nicht automatisch geladen und angezeigt.
    Durch die Aktivierung der externen Inhalte erklären Sie sich damit einverstanden, dass personenbezogene Daten an Drittplattformen übermittelt werden. Mehr Informationen dazu haben wir in unserer Datenschutzerklärung zur Verfügung gestellt.

    Ab 1:08


    Download
    Pastebin
    Direkt



    Weiteres
    Viel Spaß damit ;)
    PS: Die Include war noch nicht richtig fertig, weswegen die noch ein wenig 'verbuggt' ist, wie man das auch im Video sehen kann ;)
    Dies "muss" jeder für sich allein fixxen, bzw jemand kann es fixxen und ich packe den Code wieder hier rein.

  • Sofern du nicht bei jedem mal abfragst ob der Wert an Munition und der Wert im Clip lokal gleich sind wie auf dem Server bringt dir das gar nichts gegen Cheater ;)


    Sind lokale Daten im RAM welche du auslesen und bearbeiten kannst.