Beiträge von Quetai

    Hey Leute.
    Ich hab' vor ein Premiumsystem zu machen. Nicht mit Rängen o.Ä. sondern mit Zeit.
    Das heißt, wenn ich /premium [id] [zeit] eingebe, soll die Zeit als Tage angegeben werden.


    Beispiel:
    /premium 0 30


    Admin X hat deine Premiumzeit auf 30 Tage gesetzt.


    Und wie schaff ich das, dass die Zeit dann auch gespeichert wird?

    public PayDay()
    {
    new string[128];
    new account,interest;
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(M_Bot[i][PAFK] == 0)
    {
    Acc[i][NextPayday] = 0;
    Acc[i][P_Timer] = SetTimerEx("PaydayTimeCheck",60000,1,"i",i);


    if(MoneyMessage[i]==1)
    {
    SendClientMessage(i, COLOR_LIGHTRED, "Du konntest deine Schulden nicht Bezahlen.");
    GameTextForPlayer(i, "~r~Busted!", 2000, 1);
    SetPlayerInterior(i, 6);
    SetPlayerPos(i, 264.6288,77.5742,1001.0391);
    PlayerInfo[i][pJailed] = 1;
    ResetPlayerWeapons(i);
    ResetPlayerMoney(i);
    WantedPoints[i] = 0;
    PlayerInfo[i][pJailTime] = 240;
    format(string, sizeof(string), "Du bist eingesperrt für %d sekunden. Kaution: Keine", PlayerInfo[i][pJailTime]);
    SendClientMessage(i, COLOR_LIGHTBLUE, string);
    }
    new playername2[MAX_PLAYER_NAME];
    GetPlayerName(i, playername2, sizeof(playername2));
    account = PlayerInfo[i][pAccount];


    if(PlayerInfo[i][pPayDay] >= 3)
    {


    Tax += TaxValue;//Should work for every player online
    PlayerInfo[i][pAccount] -= TaxValue;
    if(PlayerInfo[i][pDonateRank] > 0)
    {
    new bonus = PlayerInfo[i][pPayCheck] / 2;
    PlayerInfo[i][pPayCheck] += bonus;
    }
    new checks = PlayerInfo[i][pPayCheck];
    new ebill = (PlayerInfo[i][pAccount]/10000)*(PlayerInfo[i][pLevel]);
    ConsumingMoney[i] = 1;
    GivePlayerMoney(i, checks);
    if(PlayerInfo[i][pAccount] > 0)
    {
    PlayerInfo[i][pAccount] -= ebill;
    }
    else
    {
    ebill = 0;
    }
    if(PlayerInfo[i][pMember] == 0 && PlayerInfo[i][pLeader] == 0)
    {
    checks += 500;
    }
    PlayerInfo[i][pExp]++;
    PlayerPlayMusic(i);
    PlayerInfo[i][pAccount] = account+interest;
    SendClientMessage(i, COLOR_GREEN, "=== Payday ===");
    format(string, sizeof(string), "Gehalt: $%d", checks);
    SendClientMessage(i, COLOR_WHITE, string);
    format(string, sizeof(string), "Steuern: -$%d", TaxValue);
    SendClientMessage(i, COLOR_WHITE, string);


    if(arbeitslosengeld[i] == 1)
    {
    GivePlayerMoney(i, 500);
    SendClientMessage(i, COLOR_GREY, "Du hast 500€ Arbeitslosengeld erhalten!");
    return 1;
    }


    if (PlayerInfo[i][pLeader] == 1)
    {
    format(string, sizeof(string), " Da Sie die Fraktion leiten, erhalten Sie einen Bonus von $10.000 zum Payday.");//LSPD
    SendClientMessage(i, COLOR_YELLOW, string);
    PlayerInfo[i][pAccount] += 10000;
    }
    if (PlayerInfo[i][pLeader] == 2)
    {
    format(string, sizeof(string), " Da Sie die Fraktion leiten, erhalten Sie einen Bonus von $10.000 zum Payday.");//SFPD
    SendClientMessage(i, COLOR_YELLOW, string);
    PlayerInfo[i][pAccount] += 10000;
    }
    if (PlayerInfo[i][pLeader] == 3)
    {
    format(string, sizeof(string), " Da Sie die Fraktion leiten, erhalten Sie einen Bonus von $10.000 zum Payday.");//Bundeswehr
    SendClientMessage(i, COLOR_YELLOW, string);
    PlayerInfo[i][pAccount] += 10000;
    }
    if (PlayerInfo[i][pLeader] == 4)
    {
    format(string, sizeof(string), "Da Sie die Fraktion leiten, erhalten Sie einen Bonus von $10.000 zum Payday.");//Rettungsdienst
    SendClientMessage(i, COLOR_YELLOW, string);
    PlayerInfo[i][pAccount] += 10000;
    }
    if (PlayerInfo[i][pLeader] == 5)
    {
    format(string, sizeof(string), "Da Sie die Fraktion leiten, erhalten Sie einen Bonus von $10.000 zum Payday.");//LCN
    SendClientMessage(i, COLOR_YELLOW, string);
    PlayerInfo[i][pAccount] += 10000;
    }
    if (PlayerInfo[i][pLeader] == 6)
    {
    format(string, sizeof(string), " Da Sie die Fraktion leiten, erhalten Sie einen Bonus von $10.000 zum Payday.");//Yakuza
    SendClientMessage(i, COLOR_YELLOW, string);
    PlayerInfo[i][pAccount] += 10000;
    }
    if (PlayerInfo[i][pLeader] == 7)
    {
    format(string, sizeof(string), " Da Sie die Fraktion leiten, erhalten Sie einen Bonus von $15.000 zum Payday.");//Präsident
    SendClientMessage(i, COLOR_YELLOW, string);
    PlayerInfo[i][pAccount] += 15000;
    }
    if (PlayerInfo[i][pLeader] == 8)
    {
    format(string, sizeof(string), " Da Sie die Fraktion leiten, erhalten Sie einen Bonus von $10.000 zum Payday.");//Hitman
    SendClientMessage(i, COLOR_YELLOW, string);
    PlayerInfo[i][pAccount] += 10000;
    }
    if (PlayerInfo[i][pLeader] == 9)
    {
    format(string, sizeof(string), " Da Sie die Fraktion leiten, erhalten Sie einen Bonus von $10.000 zum Payday.");//CNN-Leiter
    SendClientMessage(i, COLOR_YELLOW, string);
    PlayerInfo[i][pAccount] += 10000;
    }
    if (PlayerInfo[i][pLeader] == 10)
    {
    format(string, sizeof(string), " Da Sie die Fraktion leiten, erhalten Sie einen Bonus von $10.000 zum Payday.");//Taxi Agentur
    SendClientMessage(i, COLOR_YELLOW, string);
    PlayerInfo[i][pAccount] += 10000;
    }
    if (PlayerInfo[i][pLeader] == 11)
    {
    format(string, sizeof(string), " Da Sie die Fraktion leiten, erhalten Sie einen Bonus von $10.000 zum Payday.");//San Andreas Fahrschule
    SendClientMessage(i, COLOR_YELLOW, string);
    PlayerInfo[i][pAccount] += 10000;
    }
    if (PlayerInfo[i][pLeader] == 12)
    {
    format(string, sizeof(string), "Da Sie die Fraktion leiten, erhalten Sie einen Bonus von $10.000 zum Payday.");//Hells Angeles
    SendClientMessage(i, COLOR_YELLOW, string);
    PlayerInfo[i][pAccount] += 10000;
    }
    if (PlayerInfo[i][pLeader] == 13)
    {
    format(string, sizeof(string), " Da Sie die Fraktion leiten, erhalten Sie einen Bonus von $10.000 zum Payday.");//Groove Street
    SendClientMessage(i, COLOR_YELLOW, string);
    PlayerInfo[i][pAccount] += 10000;
    }
    if (PlayerInfo[i][pLeader] == 14)
    {
    format(string, sizeof(string), " Da Sie die Fraktion leiten, erhalten Sie einen Bonus von $10.000 zum Payday.");//Ballas
    SendClientMessage(i, COLOR_YELLOW, string);
    PlayerInfo[i][pAccount] += 10000;
    }
    if (PlayerInfo[i][pLeader] == 15)
    {
    format(string, sizeof(string), "Da Sie die Fraktion leiten, erhalten Sie einen Bonus von $10.000 zum Payday.");//Chucky Family
    SendClientMessage(i, COLOR_YELLOW, string);
    PlayerInfo[i][pAccount] += 10000;
    }
    if (PlayerInfo[i][pLeader] == 16)
    {
    format(string, sizeof(string), "Da Sie die Fraktion leiten, erhalten Sie einen Bonus von $10.000 zum Payday.");//Vagos
    SendClientMessage(i, COLOR_YELLOW, string);
    PlayerInfo[i][pAccount] += 10000;
    }
    if (PlayerInfo[i][pLeader] == 17)
    {
    format(string, sizeof(string), " Da Sie die Fraktion leiten, erhalten Sie einen Bonus von $10.000 zum Payday.");//Aztecas
    SendClientMessage(i, COLOR_YELLOW, string);
    PlayerInfo[i][pAccount] += 10000;
    }
    if (PlayerInfo[i][pLeader] == 18)
    {
    format(string, sizeof(string), " Da Sie die Fraktion leiten, erhalten Sie einen Bonus von $10.000 zum Payday.");//Rifas
    SendClientMessage(i, COLOR_YELLOW, string);
    PlayerInfo[i][pAccount] += 10000;
    }
    if (PlayerInfo[i][pLeader] == 19)
    {
    format(string, sizeof(string), "Da Sie die Fraktion leiten, erhalten Sie einen Bonus von $10.000 zum Payday.");//W.C.C.
    SendClientMessage(i, COLOR_YELLOW, string);
    PlayerInfo[i][pAccount] += 10000;
    }
    if (PlayerInfo[i][pLeader] == 20)
    {
    format(string, sizeof(string), " Da Sie die Fraktion leiten, erhalten Sie einen Bonus von $10.000 zum Payday.");//Terroristen
    SendClientMessage(i, COLOR_YELLOW, string);
    PlayerInfo[i][pAccount] += 10000;
    }


    if(PlayerInfo[i][pHandyVer] == 1)
    {
    SendClientMessage(i,COLOR_WHITE,"Handyvertragskosten: -$100");
    GivePlayerMoney(i, -100);
    }
    format(string, sizeof(string), "Zinsen: $%d [0.%d prozent]", interest,intrate);
    SendClientMessage(i, COLOR_WHITE, string);
    SendClientMessage(i, COLOR_GOLD, "|=================||============||=================|");
    format(string, sizeof(string), " Neuer Kontostand: $%d", PlayerInfo[i][pAccount]);
    SendClientMessage(i, COLOR_GRAD5, string);
    format(string, sizeof(string), "~g~PayDay~y~!!!");
    GameTextForPlayer(i, string, 5000, 1);
    PlayerInfo[i][pPayDay] = 0;
    PlayerInfo[i][pPayCheck] = 0;
    PlayerInfo[i][pConnectTime] += 1;
    if(PlayerInfo[i][pDonateRank] > 0)
    {
    PlayerInfo[i][pPayDayHad] += 1;
    if(PlayerInfo[i][pPayDayHad] >= 5)
    {
    PlayerInfo[i][pExp]++;
    PlayerInfo[i][pPayDayHad] = 0;
    }
    }
    }


    }
    else
    {
    SendClientMessage(i, COLOR_GREY, "* Du kannst keinen Payday bekommen solange du Afk bist!");
    }
    }
    }
    SaveAccounts();
    return 1;
    }

    Hey Leute.
    Wenn die 60 Minuten um sind, kommt das hier:
    public PaydayTimeCheck(playerid)
    {
    if(Acc[playerid][NextPayday] < 60)
    Acc[playerid][NextPayday] += 1;
    if(Acc[playerid][NextPayday] == 60)
    {
    PaydayZahlen[playerid][0] = 1 + random(50); // irgendeine zufällige zahl zwischen 1 & 50
    PaydayZahlen[playerid][1] = 1 + random(50); // irgendeine zufällige zahl zwischen 1 & 50
    new string[64];
    format(string,sizeof(string),"Gib ein /payday [%d + %d]", PaydayZahlen[playerid][0], PaydayZahlen[playerid][1]);
    SendClientMessage(playerid,COLOR_WHITE,string);
    KillTimer(Acc[playerid][P_Timer]);
    }
    }


    ocmd:payday(playerid,params[])
    {
    new zahl;
    if(!sscanf(params,"d",zahl))
    {
    if(zahl == PaydayZahlen[playerid][0] + PaydayZahlen[playerid][1])
    {
    PayDay(playerid);
    return 1;
    }
    else
    {
    SendClientMessage(playerid,COLOR_GREY,"Falsch!");
    return 1;
    }
    }
    else return SendClientMessage(playerid,COLOR_GREY,"Nutze: /payday [Ergebnis]");
    }

    Wenn ich dann /payday [Ergebnis] schreibe passiert nichts.
    Ich krieg den Payday nicht.
    Wieso nicht?

    Hey Leute.
    Wenn man sich beim erstellen des Accounts sein Geschlecht ausgewählt hat soll man dann je nach Geschlecht per Zufall ein Skin gegeben werden. Wie schaff ich das?


    if(CurrentMenu == Geschlecht)
    {
    if(RegistrationStep[playerid] == 1)
    {
    if(row == 0)
    {
    PlayerInfo[playerid][pSex] = 1;
    SendClientMessage(playerid, COLOR_YELLOW2, "Ok, du bist also Männlich");
    SendClientMessage(playerid, COLOR_LIGHTRED, "Wann bist du geboren? (TT.MM.JJJJ)");
    RegistrationStep[playerid] = 2;
    }
    else if(row == 1)
    {
    PlayerInfo[playerid][pSex] = 2;
    SendClientMessage(playerid, COLOR_YELLOW2, "Ok, du bist also Weiblich");
    SendClientMessage(playerid, COLOR_LIGHTRED, "Wann bist du geboren? (TT.MM.JJJJ)");
    RegistrationStep[playerid] = 2;
    }
    else
    {
    SendClientMessage(playerid, COLOR_LIGHTRED, "Bist du Männlich oder Weiblich? (Wähle das richtige aus mithilfe der Leertaste aus!).");
    }
    }
    }
    Hier wählen die ihr Geschlecht aus.


    Und hier spawnen die.
    if(dialogid == DIALOG_SERVERI5)
    {
    if(!response)
    {
    SendClientMessage(playerid, COLOR_LIGHTRED, "Pass das nächste mal besser auf!");
    Kick(playerid);
    }
    else
    {
    new x_nrr[256];
    if(strcmp(x_nrr,"2",true) == 0)
    {
    SendClientMessage(playerid, COLOR_GREEN, "Richtig!");
    TutTime[playerid] = 0; PlayerInfo[playerid][pTut] = 1;
    gOoc[playerid] = 0; gNews[playerid] = 0; gFam[playerid] = 0;
    UnFreezePlayer(playerid);
    SetCameraBehindPlayer(playerid);
    MedicBill[playerid] = 0;
    AfterTutorial[playerid] = 1;
    SetTimerEx("UnsetAfterTutorial", 2500, false, "i", playerid);
    SetTimerEx("UnsetFirstSpawn", 20000, false, "i", playerid);
    AtRegestration[playerid] = 0;
    SetPlayerSpawn(playerid);
    TextDrawHideForPlayer(playerid, PlayerInfo[playerid][LetterboxTop]);
    TextDrawHideForPlayer(playerid, PlayerInfo[playerid][LetterboxBottom]);
    StopAudioStreamForPlayer(playerid);
    SetPlayerInterior(playerid, 0);
    SetPlayerVirtualWorld(playerid, 0);
    ClearChatbox(playerid, 10);
    SendClientMessage(playerid, COLOR_GREEN, "Herzlich Willkommen auf den Straßen von San Andreas.");
    SendClientMessage(playerid, COLOR_WHITE, "Ohne einen Führerschein kannst du dich nur mit einem Fahrrad fortbewegen.");
    SendClientMessage(playerid, COLOR_WHITE, "Begebe dich zur Fahrschule um einen Führerschein zu bekommen.");
    SendClientMessage(playerid, COLOR_WHITE, "Wenn du Fragen hast, schreibe einen Report (/report).");
    }
    else if(strcmp(x_nrr,"3",true) == 0)
    {
    SendClientMessage(playerid, COLOR_RED, "Falsche Antwort! Lies dir die Server Informationen genauer durch!!");
    Kick(playerid);
    }
    else if(strcmp(x_nrr,"1",true) == 0)
    {
    SendClientMessage(playerid, COLOR_RED, "Falsche Antwort! Lies dir die Server Informationen genauer durch!!");
    Kick(playerid);
    }
    }
    return 1;
    }

    public OnPlayerDeath(playerid, killerid, reason)
    {
    SetPlayerScore(killerid,GetPlayerScore(killerid) +1);
    SetPlayerScore(playerid,0);
    if(PlayerInfo[playerid][pPaintball] == 5)
    {
    if(GetPlayerScore(killerid) == 2)
    {
    SetPlayerHealth(killerid,100);
    SetPlayerArmour(killerid,100);
    GivePlayerWeapon(killerid, 23, 999);
    GameTextForPlayer(killerid, "~r~Weiter so", 3500, 5);
    return 1;
    }
    if(GetPlayerScore(killerid) == 3)
    {
    GameTextForPlayer(killerid, "~r~Weiter so", 3500, 5);
    return 1;
    }


    Wenn ich 2 Leute gekillt habe, sollte ich eigentlich eine neue Waffe kriegen. Das passiert aber nicht.
    Wieso?

    Hey Leute.
    Ich hab' schon rumgesucht und wurde auch fündig. Als ich es jedoch probiert habe ging's trotzdem nicht.
    Meine Frage:
    Wie schaff ich das, dass, wenn man in der Paintball Arena stirbt da wieder spawnt.


    pPaintball
    PlayerInfo[playerid][pPaintball] = 0;
    public OnPlayerSpawn(playerid)
    {...
    //Paintball
    if(PlayerInfo[playerid][pPaintball] == 1)
    {
    SetPlayerPos(playerid,-2537.2830,-691.0703,139.3203);
    SetPlayerVirtualWorld(playerid,2);
    }
    else if(PlayerInfo[playerid][pPaintball] == 2)
    {
    SetPlayerPos(playerid,-975.975708,1060.983032,1345.671875);
    SetPlayerVirtualWorld(playerid,2);
    }
    else if(PlayerInfo[playerid][pPaintball] == 3)
    {
    SetPlayerPos(playerid,-975.975708,1060.983032,1345.671875);
    SetPlayerVirtualWorld(playerid,2);
    }
    else if(PlayerInfo[playerid][pPaintball] == 4)
    {
    SetPlayerPos(playerid,1392.3311,2193.9934,11.0234);
    SetPlayerVirtualWorld(playerid,2);
    }
    else if(PlayerInfo[playerid][pPaintball] == 5)
    {
    SetPlayerPos(playerid,-975.975708,1060.983032,1345.671875);
    SetPlayerVirtualWorld(playerid,2);
    }
    if(dialogid == DIALOG_PAINTBALL)
    {
    if(response==0) { return 1; }
    if(response==1)
    {
    if(listitem == 0)
    {
    PlayerInfo[playerid][pPaintball] = 1;
    GangZoneShowForPlayer(playerid, Zone, 0xFFFF0096);
    SetPlayerSkillLevel(playerid,WEAPONSKILL_DESERT_EAGLE,999);
    SetPlayerPos(playerid,-2537.2830,-691.0703,139.3203);
    SetPlayerVirtualWorld(playerid,2);
    SetPlayerWorldBounds(playerid,-2486.0928,-2543.4639,-591.9089,-719.9017);
    SendClientMessage(playerid,COLOR_WHITE,"Du hast die Deagle Arena betreten. Kosten: $500.");
    SendClientMessage(playerid,COLOR_WHITE,"Zum verlassen der Paintball Arena, tippe /exit.");
    GivePlayerMoney(playerid, -500);
    ResetPlayerWeapons(playerid);
    GivePlayerWeapon(playerid,24,999);
    }
    if(listitem == 1)
    PlayerInfo[playerid][pPaintball] = 2;

    Hey Leute.
    Da ich keine Ahnung hatte, wie ein Skinsystem machen kann, hab' ich rumgesucht und diesen gefunden:
    [ FILTERSCRIPT ] Skinauswahl (Skin'n'Bay)


    Meine Frage. Ich will das jetzt in meinen Gamemode einbauen und das dann noch so machen, dass wenn jemand z.B. Polizist ist nur bestimmte Skins angezeigt bekommt...Und wenn man in keiner Fraktion ist bestimmte Skins...Und nach dem Geschlecht getrennt. Wie schaff ich das?

    format(coordsstring, sizeof(coordsstring),"=== Personalausweiß ===");
    format(coordsstring, sizeof(coordsstring),"{ED9E15}Name:{FFFFFF} %s \n",name);
    format(coordsstring, sizeof(coordsstring),"{ED9E15}Alter:{FFFFFF} %d \n",age);
    format(coordsstring, sizeof(coordsstring),"{ED9E15}Level:{FFFFFF} %d \n",level);
    format(coordsstring, sizeof(coordsstring),"{ED9E15}Beruf:{FFFFFF} %s \n",jtext);
    format(coordsstring, sizeof(coordsstring),"{ED9E15}Status:{FFFFFF} %s \n",drank);
    format(coordsstring, sizeof(coordsstring),"{ED9E15}Verbrechen:{FFFFFF} %d \n",crimes);
    ShowPlayerDialog(giveplayerid, DIALOG_PERINFO, DIALOG_STYLE_MSGBOX, "Personalausweiß", coordsstring, "Schließen", "");


    Es wird aber nur die letze Zeile gezeigt.
    Weiß einer warum?