Beiträge von MrX


    Falsch. statt != muss da == hin sonst erlaubst du jedem player der nicht Admin lv 1337 ist den server zu restarten^^

    public Ausweisbestellen(playerid) <- Der Timer sagt aber nix von playerid daher kann das gar nicht gehen.
    Richtig ist:

    public Ausweisbestellen() {
    for(new playerid = 0;playerid==MAX_PLAYERS;playerid++){
    if(!IsPlayerConnected(playerid)) return 1;
    new file[256];
    Ausweisbestellt[playerid] = 0;
    PInfo[playerid][Ausweis] = 1;
    PInfo[playerid][AusweisNb] = RandAusweisNb+1;
    SendClientMessage(playerid,COLOR_GREEN, "[ ! ]Einwanderungsbehörde: Du hast dein Ausweis erfolgreich bekommen!");
    dini_IntSet(file,"Ausweis",PInfo[playerid][Ausweis]);
    dini_IntSet(file,"AusweisNb",PInfo[playerid][AusweisNb]);
    }
    return 1;}

    kk.
    //OnPlayerCommandText
    dcmd(s,1,cmdtext);
    //Irgentwo nicht in einer Funktion
    dcmd_s(playerid,params[]) {
    new Float:X,Float:Y,Float:Z;
    GetPlayerPos(playerid,X,Y,Z);
    for(new i = 0;i==MAX_PLAYERS;i++) {
    if(IsPlayerConnected(i)&&PlayerToPoint(BEREICH,i,X,Y,Z)) {
    SendClientMessage(i,COLOR_WHITE,params);
    }
    }
    return 1;
    }
    BEREICH musste noch ersetzen dann sollte das gehen

    Ja :P Mach einfach nen neuen Timer der allle X sec aufgerufen wird und dann das hier macht:

    public Money2Score() {
    for(new i=0;i==MAX_PLAYERS;i++) {
    if(IsPlayerConnected(i)) {
    SetPlayerScore(i,GetPlayerMoney(i));
    }
    return 1;
    }

    Danke leute :P
    [...]
    Multi: es ist möglich das ganze teil gleichzeitig zu bewegen....leider würde das ziemlich kacke aussehen, da sich die objekte nicht alle gleichzeitig bewegen lassen.... samp ist was objekte angeht leider nicht wie mta:dm. :S


    Doch das geht ;) Man müsste nur mit einem Main Object arbeiten welches die anderen objekte als bezugspunkt nehmen dann muss man nur 1 Objekt bewegen. Das ist etwas komplexer aber machbar :)

    Ein range ban ist das mit den IP Stämmen.
    wg Statische IP: Bei uns ändert die sich nur nach neustart des modems sonst bleibt sie gleich und ne Zwangstrennung gibts auch nicht

    Das gehäuse erspar ich euch mal^^


    Daten:
    CPU: Intel Core 2 Duo E6600 @ 3ghz
    Grafik: Asus GeForce 7900 GTO (512 mb) -> Solbald ich geld hab ne HD4780 :)
    2GB Ram
    OS: WinXP

    Nicht wirklich sinnvoll. Solltest du nochmal gründlich überarbeiten Gründe:
    Money Hack:

    Spoiler anzeigen

    public Money()
    {
    new i;
    for(i=0;i<MAX_PLAYERS;i++)
    {
    if(IsPlayerConnected(i))
    {
    GetPlayerMoney(i);
    if(GetPlayerMoney(i) >= 999999)
    {
    [...] Ban(i);
    }
    }
    }
    return 1;
    }
    Aha sobald man mehr als 999999$ hat wird man gebannt. Ineffektiv und unsinn (es kann sich ja jemand auch soviel gespart haben)

    Anti Spam:
    Spoiler anzeigen
    public OnPlayerText(playerid, text[])
    {
    SpamStrings[playerid] ++;
    if(SpamStrings[playerid] >= MAX_SPAM) {
    SendClientMessage(playerid,0xFFFF00AA,"[Server Security] Spam nicht! Wenns nochmal vorkommt = Kick. Warte 5 Sekunden!");
    return false;
    }
    return true;
    }
    Gekickt wird man aber nie... ;/

    DM Schutz oder sowas?:
    Spoiler anzeigen
    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    GetPlayerWeaponData(playerid,4,gun,ammo);
    [...]
    new i;
    for(i=0;i<MAX_PLAYERS;i++)
    {
    new Float:pHealth;
    GetVehicleHealth(i, pHealth);
    if(GetVehicleHealth(i,pHealth) > 1005) {
    if(IsPlayerConnected(i))
    {
    new hour;
    new minute;
    new second;
    new year;
    new month;
    new day;
    new name[24];
    new string[256];
    gettime(hour,minute,second);
    getdate(year,month,day);
    GetPlayerName(i,name,sizeof(name));
    format(string,sizeof(string)," [Server Security] %d wurde gebannt da er ein Dmler ist ist .", name);
    SendClientMessageToAll(COLOR_BLUE,string);
    Ban(i);
    }
    }
    }
    return 1;
    }
    Wozu das datum wenn es nicht gebraucht wird? Was hat eine DM sperre beim betreten eines Autos zu suchen?

    Vehicle Godmodeschutz fragt Playerhealth ab
    Spoiler anzeigen
    public God()
    {
    new i;
    for(i=0;i<MAX_PLAYERS;i++)
    {
    if(IsPlayerConnected(i))
    {
    new Float:phealth;
    GetPlayerHealth(i,phealth);
    if(GetPlayerHealth(i,phealth) > 120) {
    new name[24];
    GetPlayerName(i,name,sizeof(name));
    new string[256];
    format(string,sizeof(string),"[Server Security] %d wurde wegen Vechicle Godmode gebannt.",name);
    SendClientMessageToAll(COLOR_BLUE,string);
    Ban(i);
    }
    }
    }
    return 1;
    }
    Yap Vehicle Godmode Schutz der guckt ob der Spieler zuviel health hat.^^

    Also dazu brauchst du strtok. strtok gibt alles bis zum nächsten leerzeichen zurück (In einem String)



    //OnPlayerCommandText
    new cmd[256],idx;
    cmd = strtok(cmdtext, idx);//Auslesen des ersten werts aus cmdtext


    if(strcmp(cmd,"/heilen",true)==0) { //Nur cmd weil cmdtext ist ja zb"/heilen 3" und nicht /heilen
    new player2;
    player2 = strtok(cmdtext,idx); //Den 2. Wert aus cmdtext lesen
    SetPlayerHealth(player2,100); //Dem 2. Spieler Leben geben
    return 1;
    }











    public befreien(playerid)
    {
    for(new i=0; i<MAX_PLAYERS; i++)
    {
    if(PlayerInfo[i][pJailed] == 1)
    {

    SetPlayerInterior(i, 6);
    SetPlayerPos(i, 267.3019,77.5407,1001.0391);
    SendClientMessage(playerid, COLOR_GREY, " Du wurdest befreit! ");
    }
    }
    return 1;
    }
    Eventuell noch PlayerInfo[i][pJailed] = 0 einbauen (bei SendClientMessage)