Beiträge von bad_company

    wieso sollte ich überall "new string/strink[64(oder so)];" anstatt gleich festzulegen (oben) "new strink[64];" er heist strink weil ich ihn strink genannt hab fertig kann ihn auch lol nennen wen ich wöllte macht das ein unterschied außerdem gabs mal ein Prob. mit string da es immer sagte das es doppelt definiert sei also hab ich den einfach strink genannt (Fehler ist inzwischen behoben strink ist trd. geblieben)... ich weiß ja nicht wieso ich in jeden befehl strnk definieren soll wen er immer gleich ist

    werde es testen :D


    wundert mich nicht das man das nicht versteht ^^


    pplayerid ist bei mir eine globale variable die in jeden puplic aufgerufen werden kann :D wollte nich überall "new pplayerid;" hinschreiben...
    (bis jetz auch immer funktionstüchtig ^^)


    strink ebenfalls global festgelegt wie groß er ist...


    name[playerid/pplayerid]
    einfach beim connecten den namen nehmen und speichern um nich so viel schreiben zu müssen ...


    wie gesagt werde es testen :D..

    Also es sieht ihn als näheste Person an deswegen tazed er sich wie kann ich es machen das er sich nicht selber "wahrnimmt" ??
    Befehl:
    dcmd_tazer(playerid,params[])
    {
    #pragma unused params
    if(pInfo[playerid][team] == 1)
    {
    if(IsPlayerInAnyVehicle(playerid))
    {
    return SendClientMessage(playerid, COLOR_GREY, "Du kannst in einem Fahrzeug nicht tazern!");
    }
    if(IsPlayerConnected(pplayerid))
    {
    if(tazed[pplayerid] == 1)
    {
    return SendClientMessage(playerid, COLOR_GREY, "Dieser Spieler ist schon getazert!");
    }
    if(GetDistanceBetweenPlayers(playerid,pplayerid) < 5)
    {
    if(pInfo[pplayerid][team] == 1)
    {
    return SendClientMessage(playerid, COLOR_GREY, "Du kannst keinen Polizisten tazern!");
    }
    if(IsPlayerInAnyVehicle(pplayerid))
    {
    return SendClientMessage(playerid, COLOR_GREY, "Dieser Spieler ist in einem Fahrzeug!");
    }
    format(strink, sizeof(strink), "*Du wurdest von %s mit seinem Elektroschocker für 10 Sekunden geschockt.", name[playerid]);
    SendClientMessage(pplayerid, COLOR_LIGHTBLUE, strink);
    format(strink, sizeof(strink), "*Du hast %s für 8 Sekunden niedergestreckt.", name[pplayerid]);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, strink);
    format(strink, sizeof(strink), "*%s nimmt seinen Elektroschocker raus und tazert %s.", name[playerid] ,name[pplayerid]);
    GameTextForPlayer(pplayerid, "~r~Tazed!", 2500, 3);
    TogglePlayerControllable(pplayerid, 0);
    tazed[pplayerid] = 1;
    SetTimerEx("untazed",10000,0,"i",pplayerid);
    }
    else
    {
    return SendClientMessage(playerid, COLOR_GREY, "Niemand ist in deiner Nähe!");
    }
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, "Du bist kein Polizist!");
    }
    return 1;
    }

    Klar geht das ihr müsstet es nur richtig raus nehmen ^^


    public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
    {
    if((newkeys==KEY_ACTION)&&(IsPlayerInAnyVehicle(playerid))&&(GetPlayerState(playerid)==PLAYER_STATE_DRIVER))
    {
    if(GetVehicleModel(GetPlayerVehicleID(playerid)) == 525)
    {
    SendClientMessage(playerid,0xFFFF00AA,"Du Versuchst ein Auto Abzuschleppen");
    new Float:pX,Float:pY,Float:pZ;
    GetPlayerPos(playerid,pX,pY,pZ);
    new Float:vX,Float:vY,Float:vZ;
    new Found=0;
    new vid=0;
    while((vid<MAX_VEHICLES)&&(!Found))
    {
    vid++;
    GetVehiclePos(vid,vX,vY,vZ);
    if((floatabs(pX-vX)<7.0)&&(floatabs(pY-vY)<7.0)&&(floatabs(pZ-vZ)<7.0)&&(vid!=GetPlayerVehicleID(playerid)))
    {
    Found=1;
    if(IsTrailerAttachedToVehicle(GetPlayerVehicleID(playerid)))
    {
    DetachTrailerFromVehicle(GetPlayerVehicleID(playerid));
    }
    AttachTrailerToVehicle(vid,GetPlayerVehicleID(playerid));
    SendClientMessage(playerid,0xFFFF00AA,"Abgeschleppt!");
    }
    }
    if(!Found)
    {
    SendClientMessage(playerid,0xFFFF00AA,"Kein Auto in der Nähe.");
    }
    }
    }
    }


    //EDIT: sry für die miese einrückung aber das machts bei mir von selbst -.-
    //EDIT²: Hier musste in einem Abschlepper sitzen und "Strg" drücken..

    Tja wenn es ein Copyright hat ist das dan nicht bisschen komisch xD ^^ musste das ja mit reinkopieren vllt greift das fs noch auf andere bestummte includes oder sonstiges zu was dein GM nicht macht ... Lass es doch lieber als FS

    Zitat

    number of arguments does not match definition


    heißt nur Anzahl der argumente/parameter ist falsch (zu viele oder zu wenig)


    tipp hier:
    (line,haus_index,','));

    alles was mit" , " getrennt ist ist ein parameter...

    wen da steht tippe /enter und /exit dan ist das ein Filterscript ich klaube das ist "gl_property" geh in deine "Server.CFG" und dan mach "gl_property" hinter "filterscripts" weg dan sollten es weg sein wenn du nicht die meintest dan weiß ich auch nicht weiter...


    mfg bad_company

    interrior und world sind was anderes so weit ich weiß
    man kann jemanden in interrior 1 setzen und world 0 dann is das normal
    man kann aber auch jemanden in interror 1 setzen und in world 1 sie wären selber interrior aber könnten sich nicht sehen da sie in der anderen world sind


    interrior = ein haus z.B: SFPD oder so wenn du den interrior setzt is der da
    world = einfach eine andere world auf der selben map


    Aber das mit dem Speichern und ausgeben dürfte doch so stimmen wie ich das sehe...
    //EDIT: Lass es dir ausgeben und schau was passiert dan siehste obs saved:
    public OnPlayerDeath(playerid, killerid, reason)
    {
    new TOTstring[64];
    SendClientMessage(playerid,0xFF9190FF,"Du bist schwerverletzt, rufe mit /service einen Notarzt!");
    GetPlayerPos(playerid,Spieler[playerid][posx],Spieler[playerid][posy],Spieler[playerid][posz]);
    Spieler[playerid][interior] = GetPlayerInterior(playerid);
    Spieler[playerid][virtualw] = GetPlayerVirtualWorld(playerid);
    Spieler[playerid][Verletzt] = 1;
    format(TOTstring,sizeof TOTstring,"Du bist im Interior: %d und in World: %d gestorben!",Spieler[playerid][interior],Spieler[playerid][virtualw]);
    SendClientMessage(playerid,0xFF9190FF,TOTstring);
    return 1;
    }

    dasn schauste obs stimmt dan weißte das es saved

    Achja tipp mach das:
    [...]
    dcmd(giverank,8,cmdtext);
    dcmd(register,8,cmdtext);
    dcmd(login,5,cmdtext);
    SendClientMessage(playerid, COLOR_RED, "*::* Unbekannter Befehl *::*");
    return 1;
    }

    zu:
    [...]
    dcmd(giverank,8,cmdtext);
    dcmd(register,8,cmdtext);
    dcmd(login,5,cmdtext);
    return SendClientMessage(playerid, COLOR_RED, "*::* Unbekannter Befehl *::*");
    }

    Sonst schreibt es doch immer bei jedem befehl auch wenn er richtig ist "*::* Unbekannter Befehl *::*"

    if(strcmp(cmdtext,"/hitbase",true)==0)//hier kp sry ich benutz nur dcmd ^^
    {
    MoveObject(tGate,1411.0688476563, -1891.7446289063, 12.772193908691,2.0);
    SetTimer("GateClosetGate",5000,0);
    return 1;
    }
    so isses doch richtig(dachte ich) 8| ist das so schwer ??


    //EDIT so wie ich das sehe haste sowieso dcmd da mach ich dir das mal so:
    oben zu den anderen:
    dcmd(hitbase,7,cmdtext);
    und da wo das alte steht das rein:
    dcmd_hitbase(playerid,params[])
    {
    #pragma unused params
    MoveObject(tGate,1411.0688476563, -1891.7446289063, 12.772193908691,2.0);
    SetTimer("GateClosetGate",5000,0);
    return 1;
    }

    ich hab auch son problem bei meiner tank anzeige ^^


    hab einmal {vehicle heal(da hab ich sone striche gemacht"------")} und {tank kmh und motor}


    aber wen ich am script rumschreibe ist es manchmal so das es stat tank die heal zeigt kp wieso und wen ich dan mal wieder was anderes schreibe gehts wieder :wacko: komisch oder ?? ^^

    Danke habs hinbekommen
    enum
    {
    mietcarid
    }


    und dann cInfo[playerid][mietcarid] = CreateVehicle(...)


    bei dis. saven dan destroyen und bei con. wieder cInfo[playerid][mietcarid] = CreateVehicle(...) funzt perfekt
    auch das GetVehiclePos(cInfo[playerid][mietcarid],...)... geht ^^


    hab nur eine frage ich hab das mit unter die Spieler Ordner gehaun aber will nen eigen Ordner für Cars wie mach ich des dann ?


    mfg bad_company


    //EDIT: kleine ausbesserungen

    Zitat

    HatSimkarte[playerid] = 1;
    format(string, sizeof(string), "Du hast erfolgreich eine Simkarte gekauft! Deine Handynummer: %i", hn);
    SendClientMessage(playerid, COLOR_WHITE, string);
    dini_IntSet(save, "Handynummer", handynummer[playerid]);


    Ich hab mal nen skin nach random auswählen lassen alles ging doch dan hab ich versucht es sofort zu saven und hab wie du direkt drunter geschrieben dini_IntSet(...); als ich es dan getestet hab hat er nichtmal nen skin bekommen ... vllt hilft es dir ... lass es mal nicht in die ini speichern und las sie dir ausgeben..

    mh aber wenn eich es bei exit mache und es geklaut wird isses da wo er ausgestiegen ist beim nächsten connecten oder relog. 2. prob wie mach ich ne variable für die carid für jeden player ?? kannst du mal bsp. machen ?? ich hatte versucht die carid = dem namen des players zu machen aber hat irgendwie net gefunzt ^^

    So ich will ein autosys. scripten ich hab die enum namen ini.s ...
    doch ich weiß nicht wie ich es ohne /parken mache hatte es so vor das man das beim Disconnect speichert aber nun weiß ich nicht wie ich die Pos rausfinden soll weil um die VehicleID rauszufinden muss je Spieler drinn sein und dan GetPlayerVehicleID(..)... oder geht das auch ohne player ?? und wie ??