Beiträge von bad_company

    komisch es ist eine globale
    kann sein das ich woanders schon wieder gefuscht hab ich kopier das nochmal hier raus und teste es dan dan mach ich edit obs gib ...


    //Edit: nö immernoch nicht menno :( hast du icq ? oder skype ? oder teamviewer ? könnte ne dir ja schicken..


    //Edit2: oh hab eben erst das Pastebin gesehen ja da geht es mhh da muss bei mir irgendein fehler sein den ich net sehe aber danke dir vielmals :D


    //Edit3: Habs rausgefunden ich hatte
    forward login(playerid);
    forward logout(playerid);
    unter enum stehen und
    new pInfo[MAX_PLAYERS][e_Info];
    vergessen wie geasagt danke dir damit wäre jetz alles geklärt ^^

    Hab es nun so:
    dcmd_register(playerid,params[])


    //----------------Registrieren---------------------
    {
    if(loggedin[playerid] != 0)
    {
    SendClientMessage(playerid,COLOR_GREY,"Du bist bereits registriert.");
    return 1;
    }
    new string[128];
    GetPlayerName(playerid,name,sizeof(name));
    format(string,sizeof(string),"Willkommen %s.\n\nDu kannst dich jetzt registrieren.\nGib bitte dein gewünschtes Passwort\nein.",name);
    ShowPlayerDialog(playerid, 0,DIALOG_STYLE_INPUT, "Registrierung:", string, "Bestätigen", "Abbrechen");
    return 1;
    }

    Trotzdem noch die Errors ... :( (die selben)

    bin grade am anfang vom registersystem weiß aber net weiter hier der script:
    forward login(playerid);
    forward logout(playerid);


    new loggedin[MAX_PLAYERS];
    public OnPlayerCommandText(playerid, cmdtext[])
    {
    dcmd(register,8,cmdtext);


    return 0;
    }


    dcmd_register(playerid,params[])
    //----------------Registrieren---------------------


    if(loggedin[playerid] != 0)
    {
    SendClientMessage(playerid,COLOR_GREY,"Du bist bereits registriert.");
    return 1;
    }
    new msg[200];
    new pname[40];
    GetPlayerName(playerid,pname,sizeof(pname));
    format(msg,sizeof(msg),"Willkommen %s.\n\nDu kannst dich jetzt registrieren.\nGib bitte dein gewünschtes Passwort\nein.",pname);
    ShowPlayerDialog(playerid, 0,DIALOG_STYLE_INPUT, "Registrierung:", msg, "Bestätigen", "Abbrechen");
    return 1;
    }
    return 1;
    }


    //--------------Einloggen-------------------------
    dcmd_login(playerid,params[])
    {
    if(loggedin[playerid] != 0)
    {
    SendClientMessage(playerid,COLOR_GREY,"Du bist bereits eingeloggt.");
    return 1;
    }
    new msg[200];
    new name[40];
    GetPlayerName(playerid,name,sizeof(name));
    new msg[200];
    format(msg,sizeof(msg),"Willkommen zurück %s.\n\nDu kannst dich jetzt einloggen.\nGib bitte dein Passwort ein.",name);
    ShowPlayerDialog(playerid, 1,DIALOG_STYLE_INPUT, "Einloggen:", msg, "Bestätigen", "Abbrechen");
    return 1;
    }

    public login(playerid)
    {
    new name[MAX_PLAYER_NAME];
    new save[40];
    GetPlayerName(playerid,name,sizeof(name));
    format(save,sizeof(save),"/Spieler/%s.ini",name);
    pInfo[playerid][admin] = dini_Int(save,"Adminlevel");
    SetPlayerMoney(playerid, dini_Int(save,"Geld"));
    pInfo[playerid][score] = dini_Int(save,"Score");
    return 1;
    }


    public logout(playerid)
    {
    new name[MAX_PLAYER_NAME];
    new save[40];
    GetPlayerName(playerid,name,sizeof(name));
    format(save,sizeof(save),"/Spieler/%s.ini",name);


    dini_IntSet(save,"Adminlevel",pInfo[playerid][admin]);
    dini_IntSet(save,"Geld",GetPlayerMoney(playerid));
    dini_IntSet(save,"Score",GetPlayerScore(playerid));


    pInfo[playerid][admin] = 0;
    pInfo[playerid][score] = 0;
    SetPlayerMoney(playerid,0);
    return 1;
    }

    Hab es ja definiert aber komm die Errors:
    C:\PROGRA~1\GTASAN~1\GTASAN~1\SAMP03~1\GAMEMO~1\samplee.pwn(140) : error 017: undefined symbol "loggedin"
    C:\PROGRA~1\GTASAN~1\GTASAN~1\SAMP03~1\GAMEMO~1\samplee.pwn(140) : warning 215: expression has no effect
    C:\PROGRA~1\GTASAN~1\GTASAN~1\SAMP03~1\GAMEMO~1\samplee.pwn(140) : error 001: expected token: ";", but found "]"
    C:\PROGRA~1\GTASAN~1\GTASAN~1\SAMP03~1\GAMEMO~1\samplee.pwn(137) : error 010: invalid function or declaration
    C:\PROGRA~1\GTASAN~1\GTASAN~1\SAMP03~1\GAMEMO~1\samplee.pwn(137 -- 143) : fatal error 107: too many error messages on one line

    auf der zeile:
    if(loggedin[playerid] != 0)
    //wenn ich daraus das hier mache:
    if(loggedin(playerid) != 0)
    //läuft der compiler weiter aber es "findet" loggedin trotzdem nicht
    kann einer helfen ?
    MfG bad_company

    den quatsch hab ich selber zusamm geschrieben ... xD ich bin grade dabei teils neu anzufangen diesmal zuerst mit dem Admin Leveln und befehlen dan mit makeleader und dan mit invite mal schauen.. weil ich hatte genau andersrum angefangen .. XD das is wie wenn man ein haus von oben anfängt zu bauen xDDD kannst ja trd mal anschauen ..^^
    mfg bad_company

    So hab ein totales durcheinander und blick absolut net mehr durch ....
    Ich hab kein Plan wie Admin und das Level mit Fraktionen und /makleader bzw. /invite und dem ganzen ranking system von fraktionen zusamgehören den ich finde immer nur TuT wo eins einzel geklärt ist.. aber hab kein plan wie alle zusammen wirken kann mir einer helfen sich meinen script mal anscheuen ??
    Bitte HIILFE .. könnt mich ja adden ich schick euch dan den script
    ICQ: 422736312
    Skype: affenjesus
    TeamViewer: vohanden


    MfG bad_company

    Hier mal der script:
    public OnPlayerSpawn(playerid)
    {
    new pname[MAX_PLAYERS],accFormat[128];
    GetPlayerName(playerid,pname,sizeof pname);
    format(accFormat,sizeof accFormat,"%s.datei",pname);
    SetPlayerSkin(playerid, dini_Int(accFormat,"skin"));
    if(dini_Isset(accFormat,"lastx"))
    {
    SetPlayerPos(playerid,Spieler[playerid][lastx],Spieler[playerid][lasty],Spieler[playerid][lastz]);
    }
    if(dini_Isset(accFormat,"skin"))
    {
    SetPlayerSkin(playerid,dini_Int(accFormat, "skin"));
    }
    if(Spieler[playerid][team] == 1)
    }//hier erste error
    {
    SetPlayerPos(playerid, 199.4538,168.0576,1003.0234 );
    SetPlayerInterior(playerid, 3);
    }


    if(death[playerid] == true)
    {
    SendClientMessage(playerid, COLOR_LIGHTBLUE,"Du bist schwer verletzt und kommst ins Krankenhaus.");
    SetPlayerPos(playerid,-2656.4094,635.7793,14.4531);
    SendClientMessage(playerid, COLOR_RED, "|_____________Krankenhaus_____________|");
    SendClientMessage(playerid, COLOR_RED, " Du warst schwer Verletzt.");
    SendClientMessage(playerid, COLOR_RED, " Die Arztrechnung beträgt $500.");
    GivePlayerMoney(playerid,-400);
    death[playerid] = false;
    }



    return 1;
    }


    dcmd_makeleader(playerid,params[])
    {
    if(IsPlayerAdmin(playerid))
    {
    if(sscanf(params, "dd",playerid,team))
    return
    SendClientMessage(playerid,COLOR_YELLOW,"Benutze: /makeleader [ID] [FraktionsID]");
    new string[128];
    new pplayerid;
    new admin3[MAX_PLAYER_NAME];
    new gang = strval(sscanf(cmdtext,2));//hier zweite error wusste net wie ich es umschreiben soll
    GetPlayerName(pplayerid,admin3,sizeof(admin3));
    format(string, sizeof(string), "Du wurdest von Admin %s zum Leader der Fraktionsnummer %d gemacht.", admin3, gang);
    SendClientMessage(pplayerid, COLOR_LIGHTRED, string);
    format(string, sizeof(string), "Du hast %s zum Leader der Fraktionsnummer %d gemacht.", pplayerid, gang);
    SendClientMessage(playerid, COLOR_LIGHTRED, string);
    if(gang==1) { SetPlayerSkin(pplayerid,280);Spieler[playerid][leader]= 1; }


    Spieler[pplayerid][leader] = gang;
    Spieler[pplayerid][team] = gang;


    }
    else
    {
    SendClientMessage(playerid, COLOR_LIGHTRED,"Du darfst diesen Befehl nicht benutzen !");
    }
    return 1;
    }


    hier die errors:
    1. C:\PROGRA~1\GTASAN~1\GTASAN~1\SAMP03~1\GAMEMO~1\Sample.pwn(246) : error 029: invalid expression, assumed zero
    2. C:\PROGRA~1\GTASAN~1\GTASAN~1\SAMP03~1\GAMEMO~1\Sample.pwn(519) : error 017: undefined symbol "cmdtext"


    Und weiß jemand zu /invite irgendwie ein TuT ??


    Bitte um Hilfe
    MfG bad_company

    oki jetz hab ich die warnigs weg und bei meinem register system steht jetz nach dem registrieren: playerid = TEAM_ZIVI;
    das geht also jeder is am anfang ein zivi ^^ naja aber trotzdem kann man sich nen cop skin aussuchen auch wen man zivi ist -.- menno wie kann ich als admin leader machen und teams zuteilen gibts da ein tut ? um SuFu fin ich immer nur antworten wie "Such im SuFu xD!!" ^^

    Will ein Fraktionen System macehn komme aber nicht weiter habe es jetz sooo:
    #define TEAM_ZIVI 0
    #define TEAM_COPS 1
    new gTeam[MAX_PLAYERS];
    public OnPlayerRequestClass(playerid, classid)
    {
    switch(classid)
    {
    case 1,2,3: gTeam[playerid] = TEAM_COPS;
    default: gTeam[playerid] = TEAM_ZIVI;
    }
    return 1;
    }

    dcmd(copbase,7,cmdtext);
    dcmd_copbase(playerid,params[])
    #pragma unused params
    }
    if(//hier weiß ich net wie der das macht das er erkennt ob er cop is oder net )
    {
    SetPlayerPos(playerid,123.00,456.00,22.00);
    SendClientMessage(playerid,0x00FF00FF,"Du bist nun bei der Cop-Base!");
    }
    else
    {
    SendClientMessage(playerid,0xFF0000FF,"Du bist kein Cop!");
    }
    return 1;
    }
    dcmd_me(playerid,params[])
    #pragma unused params
    {
    if(//hier muss rein wenn er team zivi ist aber auch kp hilfe)
    {
    GameTextForPlayer(playerid,"Du bist ein normaler Zivillist!",3000,4);
    }
    else if(//same nur mit cops)
    {
    GameTextForPlayer(playerid,"Du bist ein Cop!",3000,4);
    }
    return 1;
    }
    und dan noch ne frage wie wird der dan eigendlich in die frakion geschoben ???? also das admin oder leder (gibt es ein TuT wie man leder erstellt?) den dan einstellen können ?

    forward IsAnAtm(Float:x,Float:y,Float:z);
    public IsAnAtm(Float:x,Float:y,Float:z)
    {
    (-2637.1,634.0709,14.100);
    (-2666.5,260.2071,4.1);
    return 1;
    }


    else if(IsPlayerInRangeOfPoint(IsAnAtm,2.8,x,y,z))


    und errors :
    C:\PROGRA~1\GTASAN~1\GTASAN~1\SAMP03~1\GAMEMO~1\Sample.pwn(273) : warning 215: expression has no effect
    C:\PROGRA~1\GTASAN~1\GTASAN~1\SAMP03~1\GAMEMO~1\Sample.pwn(274) : warning 215: expression has no effect
    C:\PROGRA~1\GTASAN~1\GTASAN~1\SAMP03~1\GAMEMO~1\Sample.pwn(275) : warning 217: loose indentation
    C:\PROGRA~1\GTASAN~1\GTASAN~1\SAMP03~1\GAMEMO~1\Sample.pwn(323) : error 076: syntax error in the expression, or invalid function call
    C:\PROGRA~1\GTASAN~1\GTASAN~1\SAMP03~1\GAMEMO~1\Sample.pwn(353) : error 076: syntax error in the expression, or invalid function call
    C:\PROGRA~1\GTASAN~1\GTASAN~1\SAMP03~1\GAMEMO~1\Sample.pwn(374) : error 076: syntax error in the expression, or invalid function call
    C:\PROGRA~1\GTASAN~1\GTASAN~1\SAMP03~1\GAMEMO~1\Sample.pwn(465) : warning 217: loose indentation
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    3 Errors.

    Ich will das man an nur am ATM Geld abheben usw. kann aber ich hab mehrere ATM und da wollte ich das so machen aber es ging net:
    new atm;
    atm = (-2637.1,634.0709,14.100),(-2666.5,260.2071,4.1);
    //ATM
    CreateObject(2942,-2637.1,634.0709,14.100,0,0,270.0);
    CreateObject(2942,-2666.5,260.2071,4.1,0,0,180.0);
    dcmd(abheben,7,cmdtext);
    dcmd_abheben(playerid,params[])
    {
    new
    Float:x, Float:y, Float:z,
    string[50],
    amount;

    if(sscanf(params,"d",amount))
    {
    SendClientMessage(playerid,COLOR_YELLOW,"/abheben [Geld] ");
    }
    else if(amount < 0 || amount > Spieler[playerid][bankgeld])
    {
    SendClientMessage(playerid,COLOR_LIGHTRED,"Ungültige Summe!");
    }
    else if(IsPlayerInRangeOfPoint(atm,2.8,x,y,z))
    {
    GivePlayerMoney(playerid,amount);
    Spieler[playerid][bankgeld] -= amount;
    format(string,sizeof(string),"Du hast $%d von deinem Bankkonto abgehoben.",amount);
    SendClientMessage(playerid,COLOR_LIGHTGREEN,string);
    format(string,sizeof(string),"Dein aktueller Kontostand beträgt $%d.",Spieler[playerid][bankgeld]);
    SendClientMessage(playerid,COLOR_YELLOW,string);
    }
    else
    {
    return SendClientMessage(playerid,COLOR_LIGHTRED,"Es ist kein Bankautomat in der Nähe.");
    }
    return 1;
    }

    was kann ich machen ??


    MfG bad_company

    naja dan musst du das speichern auslesen und wenn er eine rauch If (//das er sie raucht) und dan pInfo[playerid][Ziga] -=1 und beim disconect die letzte anzahl speichern halt ^^ wenn du dcmd + sscanf nutzt könnt ich dir eins schreiben ^^

    Passt schon danke hatte das mit der [128] alleine zwar auch probiert aber da hstte ich sicher nen anderen fehler drinne danke dir geht super :thumbup:


    //EDIT: Oh du hast recht es fragt nicht wie viel geld er hat was mach ich da jetz ?? wie ging das gleich ?? ?(


    //EDIT2: Oki habs auch mit dem Geld hinbekommen danke für den hinweiß ^^

    Also hier der Script:
    dcmd_gebegeld(playerid,params[])
    {
    new moneyid,
    moneyamount;


    if(sscanf(params, "ud",moneyid,moneyamount))
    {
    return SendClientMessage(playerid,0xFF0000FF,"/gebegeld [ID] [Geld]");
    } /* Ohne das return würde er weiter im script machen.*/


    if(moneyamount < 1 || moneyamount > 50000)
    {
    return SendClientMessage(playerid,0xFF0000FF,"Ungültige Summe!");
    }


    new Float:x, Float:y, Float:z;
    GetPlayerPos(playerid,x,y,z);


    if(IsPlayerInRangeOfPoint(moneyid,1.0,x,y,z))
    {
    new name[MAX_PLAYER_NAME],mname[MAX_PLAYER_NAME],string[25][128];
    GetPlayerName(moneyid,name,sizeof(name));
    GetPlayerName(playerid,mname,sizeof(mname));
    format(string[0],sizeof(string),"Du hast $%d von %s bekommen!",moneyamount,mname);
    SendClientMessage(moneyid,0xFFFF00AA,string[0]);
    GivePlayerMoney(moneyid,moneyamount);
    format(string[1],sizeof(string),"Du hast $%d an %s geschickt!",moneyamount,name);
    SendClientMessage(playerid,0xAA3333AA,string[1]);
    GivePlayerMoney(playerid,-moneyamount);
    }
    else
    {
    return SendClientMessage(playerid,0xFF0000FF,"Der Spieler ist nicht in deiner nähe");
    }
    return 1;
    }
    da is ein Problem bei:
    new name[MAX_PLAYER_NAME],mname[MAX_PLAYER_NAME],string[25][128];


    wenn ich jemanden geld gebe steht der halbe satz da z.B "Du hast von [Name] " anstatt "Du hast von [Name] $[Geld]bekommen".
    wenn ich aus der 25 ne 50 mache kommt Bug und wenn ich ne 5 draus mache kommen nur die ersten 4 Buchstaben vom Satz .


    was ist falsch ??


    MfG bad_company