Brauche Hilfe für ein ScoreSystem

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
  • Guten Tag,


    Habe angefangen einen Server über meinen PC zu führen.
    Meine Frage ist folgende:


    Ich möchte ein ScoreSystem machen indem man z.B nach 20kills einen Level aufsteigt.


    Momentan benutze ich als Vorlage den Gamemode "lvdm" den ich mittlerweile weit umgeändert habe ;)


    Ich hoffe, dass mir jmd. behilflich sein kann :)
    lg

  • FÜr meinen Server den ich führe :D


    Also es wird bzw. ist ein Deathmacth Server, jedoch möchte ich für andere Spieler nach einer bestimmten Anzahl von kills,
    einen levelup ;)


    lg

  • Für was fragst du das?


    @Threadstarter: Das ist eigentlich sehr einfach, bei OnPlayerDeath änderst du den Score (SetPlayerScore glaube ich) auf Score+1 (GetPlayerScore).


    // Edit: Falsch verstanden... Dann musst du die Kills in eine Variable Speichern und immer wenn er 20 Kills hat den Score erhöhen.

    Moderator der Bereiche: Coding, Vorstellungsrunde und Handelsecke. Über Verwarnungen, falls du zu den Wenigen gehörst, die eine Verwarnung von mir erhalten haben, kannst du jederzeit mit mir reden, sofern der Umgangston stimmt.


    expect us. / unkompetent. Das neue dynamisch. / easy-stripping.net - coming soon! / "9§. the entire website bestands out of english." / Vollprofi in allem, wo gibt und noch mehr; kann auch OOP.
    Kleine Coding-Frage? Schau doch in #dev im IRC vorbei, wir können dir sicher helfen.


    Ich bin für Aufträge im Bereich der Webentwicklung (z.B. User Control Panel) zu haben. Kontaktiere mich diesbezüglich einfach in einer privaten Nachricht mit deinen, möglichst konkreten, Vorstellungen.


    lesen.denken.posten. - [22:54:14] <Goldkiller2> früher gabs immer so coole user da stand in der signatur "lesen.denken.posten."


    Mafia 2 Multiplayer (m2mp.de) - Eine kostenlose Modifikation für Mafia 2, die es, ähnlich wie SAMP, erlaubt über das Internet oder LAN mit bis zu 1000 anderen Spielern zu spielen.

  • Danke erstmal für deine Erklärung jedoch verstehe ich bisher nur Bahnhof :D
    Also das 1. was du falsch verstanden hast, habe ich verstanden, aber wie es mit den kills ist,
    nicht so wirklich :D


    P.S: Wie schnell wird hier eigt. geantwortet? 8| Dauert in anderen Foren ewig


  • // Oben
    new kills[MAX_PLAYERS];
    // OnPlayerDeath
    if(kills[killerid] == 20)
    {
    kills[killerid] = 0;
    }
    else
    {
    kills[killerid]++;
    }
    // bzw. Kurzform
    if(kills[killerid] == 20) kills[killerid] = 0;
    else kills[killerid]++;


    Ist nur aus dem Kopf, sollte aber gehen

    Moderator der Bereiche: Coding, Vorstellungsrunde und Handelsecke. Über Verwarnungen, falls du zu den Wenigen gehörst, die eine Verwarnung von mir erhalten haben, kannst du jederzeit mit mir reden, sofern der Umgangston stimmt.


    expect us. / unkompetent. Das neue dynamisch. / easy-stripping.net - coming soon! / "9§. the entire website bestands out of english." / Vollprofi in allem, wo gibt und noch mehr; kann auch OOP.
    Kleine Coding-Frage? Schau doch in #dev im IRC vorbei, wir können dir sicher helfen.


    Ich bin für Aufträge im Bereich der Webentwicklung (z.B. User Control Panel) zu haben. Kontaktiere mich diesbezüglich einfach in einer privaten Nachricht mit deinen, möglichst konkreten, Vorstellungen.


    lesen.denken.posten. - [22:54:14] <Goldkiller2> früher gabs immer so coole user da stand in der signatur "lesen.denken.posten."


    Mafia 2 Multiplayer (m2mp.de) - Eine kostenlose Modifikation für Mafia 2, die es, ähnlich wie SAMP, erlaubt über das Internet oder LAN mit bis zu 1000 anderen Spielern zu spielen.

  • Bekomme 2 Erros,
    C:\Users\Vitalij\Desktop\Games\GTA-SA\gamemodes\lvdm.pwn(296) : error 010: invalid function or declaration
    C:\Users\Vitalij\Desktop\Games\GTA-SA\gamemodes\lvdm.pwn(300) : error 010: invalid function or declaration
    C:\Users\Vitalij\Desktop\Games\GTA-SA\gamemodes\lvdm.pwn(615) : warning 203: symbol is never used: "kills"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    2 Errors.

  • Poste bitte mal die Zeilen, denn an meinem Beispiel finde ich gerade keinen Fehler.

    Moderator der Bereiche: Coding, Vorstellungsrunde und Handelsecke. Über Verwarnungen, falls du zu den Wenigen gehörst, die eine Verwarnung von mir erhalten haben, kannst du jederzeit mit mir reden, sofern der Umgangston stimmt.


    expect us. / unkompetent. Das neue dynamisch. / easy-stripping.net - coming soon! / "9§. the entire website bestands out of english." / Vollprofi in allem, wo gibt und noch mehr; kann auch OOP.
    Kleine Coding-Frage? Schau doch in #dev im IRC vorbei, wir können dir sicher helfen.


    Ich bin für Aufträge im Bereich der Webentwicklung (z.B. User Control Panel) zu haben. Kontaktiere mich diesbezüglich einfach in einer privaten Nachricht mit deinen, möglichst konkreten, Vorstellungen.


    lesen.denken.posten. - [22:54:14] <Goldkiller2> früher gabs immer so coole user da stand in der signatur "lesen.denken.posten."


    Mafia 2 Multiplayer (m2mp.de) - Eine kostenlose Modifikation für Mafia 2, die es, ähnlich wie SAMP, erlaubt über das Internet oder LAN mit bis zu 1000 anderen Spielern zu spielen.

  • Das die letzte Zeile nicht existiert ist logisch.
    Bitte Poste mal ein paar zeilen davor und danach mit, aber was ich bei dir sehe hat else keine Anweisung, oder hast du nur vergessen was zu kopieren?

    Moderator der Bereiche: Coding, Vorstellungsrunde und Handelsecke. Über Verwarnungen, falls du zu den Wenigen gehörst, die eine Verwarnung von mir erhalten haben, kannst du jederzeit mit mir reden, sofern der Umgangston stimmt.


    expect us. / unkompetent. Das neue dynamisch. / easy-stripping.net - coming soon! / "9§. the entire website bestands out of english." / Vollprofi in allem, wo gibt und noch mehr; kann auch OOP.
    Kleine Coding-Frage? Schau doch in #dev im IRC vorbei, wir können dir sicher helfen.


    Ich bin für Aufträge im Bereich der Webentwicklung (z.B. User Control Panel) zu haben. Kontaktiere mich diesbezüglich einfach in einer privaten Nachricht mit deinen, möglichst konkreten, Vorstellungen.


    lesen.denken.posten. - [22:54:14] <Goldkiller2> früher gabs immer so coole user da stand in der signatur "lesen.denken.posten."


    Mafia 2 Multiplayer (m2mp.de) - Eine kostenlose Modifikation für Mafia 2, die es, ähnlich wie SAMP, erlaubt über das Internet oder LAN mit bis zu 1000 anderen Spielern zu spielen.

  • public OnPlayerDeath(playerid, killerid, reason)
    {
    new playercash;
    if(killerid == INVALID_PLAYER_ID) {
    SendDeathMessage(INVALID_PLAYER_ID,playerid,reason);
    ResetPlayerMoney(playerid);
    } else {
    SendDeathMessage(killerid,playerid,reason);
    SetPlayerScore(killerid,GetPlayerScore(killerid)+1);
    playercash = GetPlayerMoney(playerid);
    if (playercash > 0) {
    GivePlayerMoney(killerid, playercash);
    ResetPlayerMoney(playerid);
    }
    else
    {
    }
    }
    return 1;
    }
    if(kills[killerid] == 20)
    {
    kills[killerid] = 0;
    }
    else
    {
    kills[killerid]++;
    }


    und oben:


    new dm;
    new kills[MAX_PLAYERS];

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Hallo,


    Ganz oben:



    new PlayerKills[MAX_PLAYERS];
    new PlayerRang[MAX_PLAYERS];


    Ganz oben:


    #define MAX_PLAYER_KILLS 20




    Bei OnPlayerDeath:



    public OnPlayerDeath(playerid, killerid, reason)
    {
    if(PlayerKills[killerid] < MAX_PLAYER_KILLS)
    PlayerKills[killerid]++;
    else if(PlayerKills[killerid] >= MAX_PLAYER_KILLS)
    {
    PlayerKills[killerid]=0;
    PlayerRang[killerid]++;
    if(PlayerRang[playerid]==1)
    SendClientMessage(playerid, FARBE, "Du bist nun Rang bla");
    }
    return 1;
    }

    Verkaufe FREEROAM/DM/STUNT/MISSION vollständige Gamemodes Billig
    -> Melden per PN

  • Hier:


    public OnPlayerDeath(playerid, killerid, reason)
    {
    new playercash;
    if(killerid == INVALID_PLAYER_ID) {
    SendDeathMessage(INVALID_PLAYER_ID,playerid,reason);
    ResetPlayerMoney(playerid);
    } else {
    SendDeathMessage(killerid,playerid,reason);
    SetPlayerScore(killerid,GetPlayerScore(killerid)+1);
    playercash = GetPlayerMoney(playerid);
    if (playercash > 0) {
    GivePlayerMoney(killerid, playercash);
    ResetPlayerMoney(playerid);
    }
    else
    {
    }
    if(PlayerKills[killerid] < MAX_PLAYER_KILLS)
    PlayerKills[killerid]++;
    else if(PlayerKills[killerid] >= MAX_PLAYER_KILLS)
    {
    PlayerKills[killerid]=0;
    PlayerRang[killerid]++;
    if(PlayerRang[playerid]==1)
    SendClientMessage(playerid, COLOR_WHITE, "You got a LevelUp");
    }
    }
    DropPlayerWeapons(playerid);
    return 1;
    }

  • versuchs mal so:
    public OnPlayerDeath(playerid, killerid, reason)
    {
    new playercash;
    if(killerid == INVALID_PLAYER_ID)
    {
    SendDeathMessage(INVALID_PLAYER_ID,playerid,reason);
    ResetPlayerMoney(playerid);
    }
    else
    {
    SendDeathMessage(killerid,playerid,reason);
    SetPlayerScore(killerid,GetPlayerScore(killerid)+1);
    playercash = GetPlayerMoney(playerid);
    if (playercash > 0)
    {
    GivePlayerMoney(killerid, playercash);
    ResetPlayerMoney(playerid);
    }
    if(PlayerKills[killerid] < MAX_PLAYER_KILLS)
    {
    PlayerKills[killerid]++;
    if(PlayerKills[killerid] >= MAX_PLAYER_KILLS)
    {
    PlayerKills[killerid]=0;
    PlayerRang[killerid]++;
    new string[128];
    format(string, sizeof(string), "Level Up! Dein Level ist nun %d !", PlayerRang[killerid]);
    SendClientMessage(playerid, COLOR_WHITE, string);
    }
    }
    }
    DropPlayerWeapons(playerid);
    return 1;
    }

    The fact is, I am right. And if you think I'm wrong, you are wrong.

  • Habs gelsöcht, jetzt aber folgendes:
    Der 20x getötet wurde bekommt den Text: LevelUp, DU bist nun Level 1


    Aber es soll ja nicht der der 20x mal getötet wurde sondern getötet hat :D
    unter score steht aber trotzdem 0...


    Und die SKinauswahl funktioniert deswegen nicht mehr!