Beiträge von [GRL]Felix

    So, wieder eine Frage von mir.


    Wie kann man zufällige Nummern/Zahlen generieren? z.B. Telefon Nummer, Lotto, usw...



    Könnte mir da jemand weiterhelfen und wenn möglich ein Beispiel mit posten?

    Habe ein Problem, immer wenn ich versuche einen Befehl mit IsPlayerInRangeOfPoint verknüpfe passiert gar nichts. Es kommen keine Errors/Warnings aber wenn ich an dieser Stelle stehe kommt einfach nichts. z.B.


    if(strcmp("/atm", cmdtext, true) == 0)
    {
    if(IsPlayerInRangeOfPoint(playerid,1520.7656,-1687.3563,13.5469,180.9825))
    {
    ShowPlayerDialog(playerid,DIALOG_BANK,DIALOG_STYLE_LIST,"Bank", "Einzahlen\nAuszahlen\nÜberweisen\nKontostand", "Auswählen", "Abbrechen");
    return 1;
    }
    }



    Eine Frage noch zu IsPlayerInRangeOfPoint:



    Wenn man da die Koordinaten angibt, heißt das dann das man da genau an dieser Stelle stehen muss oder kann man da auch 1-2 Meter daneben stehen?

    1. Frage: Also wenn ich IsPlayerInRangeOfPoint benutzte, wie kann ich dann die Position in Interiors herausfinden?



    2. Frage: Also ich habe gestern ein /invite Befehl gescriptet aber irgendwie möchte ich auch das der Spieler der in die Fraktion eingeladen wird auch mit /accept invite die Einladung annehmen kann, aber wie geht das? Da müsste ja der Befehl (/accept ...) in dem /invite Befehl drinstehen oder gibts da eine andere Möglichkeit


    Info: Habe es mit ocmd gemacht

    Also zu erst will ich mich mal Entschuldigen. Ich weiß leider nicht genau wo dieses Problem posten soll!


    So jetzt zum eigentlichen Problem. Es ist bisschen kompliziert das zu erklären, daher werde ich alle mir bekannten Details mit hinschreiben. 8)



    -Die Accountinfos (Passwort, Name, Team) werden bei mir in einem Ordner "Accounts" gespeichert.


    Gestern hab ich einen Fehler in meinem Script ausgebessert, habe daraufhin alle bestehenden Accounts gelöscht (im Ordner) und mich neu registriert. Dann hab ich mein Adminlevel geändert und wollte die Datei >>SPEICHERN<<.


    So und da liegt das Problem!!


    Immer wenn ich Accounts ändere und dann abspeichern will kommt diese Fehlermeldung:



    "Die Datei C:\Program Files (x86)\Rockstar Games\scriptfiles\Accounts\Felix.txt kann nicht erstellt werden.


    Stellen Sie sicher, dass Pfad- und Dateiname richtig sind."



    -So das gleiche Problem hatte ich schoneinmal vor ca. 6 Monaten!


    Hatte das Problem dann in Computer Foren gepostet und die haben mir geraten, das ich mich in Windows reinmachen soll und mich da irgendwie als Administrator machen soll (sry wegen Grammatik^^ aber keine Ahnung wie ich das erklären soll). Hab ich dann auch porbiert, war aber nur möglich wenn ich mir ein neues Benutzterkonto machen würde. Auch das hab ich gemacht, ging dann auch hatte aber nach 1 Woche die Nase voll (alle Daten waren auf dem neuen Konto weg, usw.). Dann hab ich mich entschlossen doch wieder das alte Konto zu benutzten und plötzlich ging wieder alles. Ich konnte die Accounts wieder ganz normal ändern und dann auch speichern.



    Also, jetzt kennt ihr mein Problem. Ich hoffe ihr könnt mir helfen.



    >>ABER<<


    Ich möchte das nicht wie das letzte mal haben, also das ich mir ein neues Konto machen muss...


    Ich hoffe da gibts einen einfacheren Weg!!

    Vielen dank!! Genauso hab ich mir das vorgestellt mit case und so, aber eine Frage hab ich noch. Da steht ja jetzt SetPlayerWantedLevel(pID,1);. Bedeutet dass, das der Spieler 1 Wanted hat (also danach) oder wird das 1 Wanted zu seinen anderen dazugezählt (die die er schon hat). Muss ich da nicht noch ein Teil reinmachen das zu meinem Login/Register System führt zum speichern und laden?

    Also ich würde gerne einen /su [Name/ID] [Verbrechen ID] Befehl machen, aber ich habe leider keine Ahnung wie man das macht. Ich stelle mir das so in der Art vor:


    1. Können es alle Cops (ab Rank 1) machen


    2. Cops müssen dann nur den Name des Spieler und die Verbrechen ID (die jeder Cop neben der Tastatur auf einen Zettel geschrieben hat ;D) eingeben


    3. Der Verbrecher bekommt je nachdem welche Verbrecher ID der Cop eingegeben hat --> Die Anzahl an Wanteds und den Grund (die ich dann vorher im Script zu jeder ID festgelgt hab)




    Also soweit hab ichs schon:




    ocmd:su(playerid,params[])
    {
    new pID,Verbrechen
    if(sscanf(params,"ui",pID,Verbrechen))return SendClientMessage(playerid,COLOR_GREY," [Benutzung]: /su [ID/Name] [Verbrechen ID]");
    if(!IsPlayerInTeam(playerid,1))return SendClientMessage(playerid,COLOR_GREY," Das kannst du nicht!");
    if(!IsPlayerRank(playerid,1))return SendClientMessage(playerid,COLOR_GREY," Das kannst du nicht!");
    return 1;
    }




    Also wäre echt Klasse wenn ihr mir erklären könntet wie ich so was machen kann oder mir vieleicht auch ein Grundgrüst scripten könnte, sodas ich dann nur noch den Grund zu jeder ID hinschrieben muss und die Anzahl an Wanteds die man bekommt. Will aber keinen Dialog!



    //Edit Scriptfehler ausgebessert

    Ich finde den Ort nicht so gut. Ich würde es eher in LS (Stadt) machen als auf einem Flughafen aber das muss jeder selber wissen :) .


    Aber Feuerwehr selber find ich richtig gut! :thumbup:


    9/10*

    So habe letztens den /stats Befehl bei mir eingefügt funktioniert auch alles soweit ganz gut bis auf die Fraktionen. Egal welchen Skin ich nehme es heißt immer ich bin ZIVI.


    Ich poste mal das wichtigste:


    Das steht ganz oben bei mir:




    static gTeam[MAX_PLAYERS];
    #define TEAM_ZIVI 0
    #define TEAM_LSPD 1
    #define TEAM_MEDIC 2
    #define TEAM_OAMT 3




    ZIVI + LSPD Skins:




    AddPlayerClassEx(0,0,1722.8042,-1630.6086,20.2143,0.2131,0,0,0,0,0,0); //ZIVI
    AddPlayerClassEx(0,1,1722.8042,-1630.6086,20.2143,0.2131,0,0,0,0,0,0);
    AddPlayerClassEx(0,29,1722.8042,-1630.6086,20.2143,0.2131,0,0,0,0,0,0);


    AddPlayerClassEx(1,280,1568.4298,-1692.1383,5.8906,180.6883,24,999,29,999,31,999); //LSPD
    AddPlayerClassEx(1,282,1568.4298,-1692.1383,5.8906,180.6883,24,999,29,999,31,999);
    AddPlayerClassEx(1,267,1568.4298,-1692.1383,5.8906,180.6883,24,999,29,999,31,999);




    Hmm dann hab ich noch das aber dazu kann ich leider nichts sagen (hab ich vor 1/2 Jahr gemacht + bin leider noch nicht der beste im scripten):


    Hab es mir aber kurz angeschaut und ich hab mir gedacht ob es nicht statt den vielen Zahlen nur die Team ID dran stehen muss. Oder stimmt das so wie es ist?




    switch(classid)
    {
    case 0,1,2,3,4,5,6,7,8,9: gTeam[playerid] = TEAM_ZIVI;
    case 10,11,12,13: gTeam[playerid] = TEAM_LSPD;
    case 14,15,16: gTeam[playerid] = TEAM_MEDIC;
    case 17,18,19: gTeam[playerid] = TEAM_OAMT;
    }




    Hier nun der /stats Befehl:




    if(strcmp("/stats",cmdtext, true,10)== 0)
    {
    new string[216];
    new Fraktionsname[64];
    switch(GetPVarInt(playerid,"Fraktion"))
    {
    case 0:{Fraktionsname="ZIVI";}
    case 1:{Fraktionsname="LSPD";}
    case 2:{Fraktionsname="MEDIC";}
    }
    SendClientMessage(playerid,COLOR_GREY,"_________________________________Stats_________________________________");
    format(string,sizeof(string),">> Beruf << [Adminlevel: %i] [Team: %s]",GetPVarInt(playerid,"Adminlevel"),Fraktionsname);
    SendClientMessage(playerid,COLOR_WHITE,string);
    SendClientMessage(playerid,COLOR_GREY, "______________________________________________________________________");
    return 1;
    }




    Und zu letzt noch ein Teil von meinem Login/Register System:




    stock LoadAccount(playerid)
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    SetPVarInt(playerid,"Fraktion",dini_Int(Spielerdatei,"Fraktion"));
    return 1;
    }


    stock SpielerSpeichern(playerid)
    {
    {
    new Spielerdatei[64];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid,name,sizeof(name));
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
    dini_IntSet(Spielerdatei,"Fraktion",GetPVarInt(playerid,"Fraktion"));
    }
    return 1;
    }




    Würde mich sehr sehr freuen wenn ihr mir helfen könntet und mir am besten alles ausführlich erklärt.

    Also ...



    1. bei dem TuT wo ich gemacht habe (Link steht im auf der Seite ganz oben) hat gesagt man muss wenn man Teams erstellt das so machen:






    AddPlayerClass(teamid, modelid, Float:spawn_x, Float:spawn_y, Float:spawn_z, Float:z_angle, weapon1, weapon1_ammo, weapon2, weapon2_ammo, weapon3, weapon3_ammo);


    also am anfang noch die Teamid reinschreiben. Wie soll ichs nun machen?



    2. und wie meinst du das mit classid nicht definiert?



    3. Ich habe vorhin mal getestet obs funktioniert, hab den Zivi Skin ausgewählt und wollte Spawnen und dann komm ich irgendwo in LV in der Wüste raus obwohl die Koordinanten neben dem LSPD sind? Was kann da der Fehler sein?

    Erstmal vielen dank sind zwar immer noch 5 Warnungs da aber ist mir jetzt auch egal die sind ja nicht so schlimm oder?



    C:\Program Files (x86)\Rockstar Games\gamemodes\germanreallife.pwn(41) : warning 213: tag mismatch
    C:\Program Files (x86)\Rockstar Games\gamemodes\germanreallife.pwn(41) : warning 202: number of arguments does not match definition
    C:\Program Files (x86)\Rockstar Games\gamemodes\germanreallife.pwn(594) : warning 225: unreachable code
    C:\Program Files (x86)\Rockstar Games\gamemodes\germanreallife.pwn(598) : warning 209: function "OnPlayerRequestClass" should return a value
    C:\Program Files (x86)\Rockstar Games\gamemodes\germanreallife.pwn(634) : warning 225: unreachable code
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


    7 Warnings.

    WOW!!



    Keine Errors mehr :D


    Dafür noch die 6 Warnings, wäre nett wenn ihrs euch nochmal anschaut das die auch noch weg gehen.



    C:\Program Files (x86)\Rockstar Games\gamemodes\germanreallife.pwn(41) : warning 213: tag mismatch
    C:\Program Files (x86)\Rockstar Games\gamemodes\germanreallife.pwn(41) : warning 202: number of arguments does not match definition
    C:\Program Files (x86)\Rockstar Games\gamemodes\germanreallife.pwn(594) : warning 225: unreachable code
    C:\Program Files (x86)\Rockstar Games\gamemodes\germanreallife.pwn(598) : warning 209: function "OnPlayerRequestClass" should return a value
    C:\Program Files (x86)\Rockstar Games\gamemodes\germanreallife.pwn(634) : warning 225: unreachable code
    C:\Program Files (x86)\Rockstar Games\gamemodes\germanreallife.pwn(638) : warning 209: function "OnPlayerSpawn" should return a value
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


    8 Warnings.




    AddPlayerClass(0,0,1721.9495,-1632.1365,20.2150,0.0754,0,0,0,0,0,0); //Zeile 41




    switch(classid) //Zeile 594
    { //Zeile 595
    case 0: gTeam[playerid] = TEAM_ZIVI; //Zeile 596
    } //Zeile 597
    } //Zeile 598




    if(gTeam[playerid] == TEAM_ZIVI) //Wenn der Spieler im Test Team Spawnt... //Zeile 634
    { //Zeile 635
    SetPlayerColor(playerid, COLOR_YELLOW); // ...bekommt er die Farbe Blau! //Zeile 636
    } //Zeile 637
    } //Zeile 638




    So das war alles

    Also habs jetzt so probiert:



    new gTEAM[MAX_PLAYERS];
    #define TEAM_ZIVI 0



    aber kommen glaub immer noch die gleichen Errors =(



    C:\Program Files (x86)\Rockstar Games\gamemodes\germanreallife.pwn(42) : warning 213: tag mismatch
    C:\Program Files (x86)\Rockstar Games\gamemodes\germanreallife.pwn(42) : warning 202: number of arguments does not match definition
    C:\Program Files (x86)\Rockstar Games\gamemodes\germanreallife.pwn(595) : warning 225: unreachable code
    C:\Program Files (x86)\Rockstar Games\gamemodes\germanreallife.pwn(597) : error 017: undefined symbol "gTeam"
    C:\Program Files (x86)\Rockstar Games\gamemodes\germanreallife.pwn(597) : error 029: invalid expression, assumed zero
    C:\Program Files (x86)\Rockstar Games\gamemodes\germanreallife.pwn(597 -- 598) : warning 215: expression has no effect
    C:\Program Files (x86)\Rockstar Games\gamemodes\germanreallife.pwn(598) : error 001: expected token: ";", but found "}"
    C:\Program Files (x86)\Rockstar Games\gamemodes\germanreallife.pwn(598) : fatal error 107: too many error messages on one line
    Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


    4 Errors.

    Hallo...


    ...also ich habe gestern veruscht Fraktionen/Teams in meinen Script einzubauen. Leider sind Errors gekommen =( . Ich poste jetzt mal den Teil des Scriptes wo etwas mit den Teams zu tun hat UND wo ich denke das Fehler sein könnten.


    Das Tutorial das ich gemahct habe ist hier --->> [ SCRIPTING ] Tutorial zum gTEAM [Anfänger Freundlich] //Updated






    #define gTEAM[MAX_PLAYERS]:
    #define TEAM_ZIVI 0


    AddPlayerClass(0,0,1721.9495,-1632.1365,20.2150,0.0754,0,0,0,0,0,0); //Hier mein Test Skin von Zivis -----------------Zeile 40


    public OnPlayerRequestClass(playerid, classid)
    {
    {
    SetPlayerPos(playerid,1483.2532,-1398.6469,46.7422);
    SetPlayerFacingAngle(playerid,64.5701);
    SetPlayerCameraPos(playerid,1479.5344,-1396.5750,46.7422);
    SetPlayerCameraLookAt(playerid,1483.2532,-1398.6469,46.7422);
    return 1;
    }
    switch(classid) //Zeile 593 ------- ALSO!!! Ich weiß nicht ob hier ein Fehler liegt, da ich immer noch nicht weiß wie man 2 verschiedene Sachen trennt (z.B. 2 Befehle von einander oder wie hier in dem Fall)
    {
    case 0: gTeam[playerid] = TEAM_ZIVI //Zeile 595
    } //Zeile 596
    }


    public OnPlayerSpawn(playerid)
    {
    {
    clock();
    return 1;
    }
    if(gTeam[playerid] == TEAM_TestTeam) //Wenn der Spieler im Test Team Spawnt... //Hier das gleiche Problem wie oben, ich hab keine Ahnung wie man das clock von dem anderen trennt
    {
    SetPlayerColor(playerid, COLOR_BLUE); // ...bekommt er die Farbe Blau!
    }
    return 1;
    }






    So das wars. Jetzt noch die Errors/Warnings. In denen wo welche vorkommen schreib ich die Zeilen neben hin!




    C:\Program Files (x86)\Rockstar Games\gamemodes\germanreallife.pwn(40) : warning 213: tag mismatch
    C:\Program Files (x86)\Rockstar Games\gamemodes\germanreallife.pwn(40) : warning 202: number of arguments does not match definition
    C:\Program Files (x86)\Rockstar Games\gamemodes\germanreallife.pwn(593) : warning 225: unreachable code
    C:\Program Files (x86)\Rockstar Games\gamemodes\germanreallife.pwn(595) : error 017: undefined symbol "gTeam"
    C:\Program Files (x86)\Rockstar Games\gamemodes\germanreallife.pwn(595) : error 029: invalid expression, assumed zero
    C:\Program Files (x86)\Rockstar Games\gamemodes\germanreallife.pwn(595 -- 596) : warning 215: expression has no effect
    C:\Program Files (x86)\Rockstar Games\gamemodes\germanreallife.pwn(596) : error 001: expected token: ";", but found "}"
    C:\Program Files (x86)\Rockstar Games\gamemodes\germanreallife.pwn(596) : fatal error 107: too many error messages on one line
    Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase


    4 Errors.








    Bitte Bitte helft mir und erklärt mir wenn es geht wie man Sachen ausseinander hält =).




    Felix

    Also in den Sciptfiles steht nur ein Textdokument indem das hier steht:



    // TextDraw developed using Zamaroht's Textdraw Editor 1.0


    // On top of script:


    // In OnGameModeInit prefferably, we procced to create our textdraws:
    // You can now use TextDrawShowForPlayer(-ForAll), TextDrawHideForPlayer(-ForAll) and
    // TextDrawDestroy functions to show, hide, and destroy the textdraw.



    eine LST-Datei (bei der ich nicht weiß mit welchem Programm ich die öffnen soll)



    und eine TDE-Datei (weiß ich auch nicht mit was ich die öffnen soll)

    So also vielen dank erstmal an euch beide!!


    Aber eins weiß ich immer noch nicht. Ich hab mir jetzt das Teil runtergeladen, in FS Ordner getan, gestartet und einen Text erstellt -->> aber wie mach ich das jetzt in meinen Server rein??



    Oder ist das jetzt schon drin??