Jump to content

[Hades]

Uživatel
  • Příspěvků

    35
  • Registrován

  • Aktivní

Příspěvky posted by [Hades]

  1. právě to mě taky jedine napadlo díky za pomoc  budu to koumat a bacha na servery utoky jdou ze serveru Club Zone fakt fetaci co neunesou ze tam nikdo nechce hrat tak kazi jine servery jinak jde o lidi sokeres a _[K]ill[3]r_ je pro případ že tyto nicky spatříte  at víte 

  2. útoky probíhají namátkově příde noví hráč sedne do auta a zacne bugovat nějak hru sekat ho to začne teleportovat jak sobeit ale anticheat nehlasi warp hack jak u sobeitu

    a ip sou takové 

    Karl_CZ 24.21.220.121 
    Kacka 5.19.3.35 
    edge 184.22.232.62 
    Eliska 109.126.232.37 
    gregor 190.72.72.166 
    MensiFix12355 91.200.138.151 
    Creppy 109.183.128.210 
    Bike 176.51.170.63 
    Gandalf 185.178.50.116 
    Goliasch 160.179.35.250 
    Miliardar 93.142.149.171 
    CrazySmile 185.178.50.103 
    Fifo007 78.1.16.255

  3. právě nemám ale pokusím se to řešit z podporou serveru protože je to docela aktivní hosting tak by to mohly poskytnout ale asi nějaký kod na omezeni IP kromě CZ/SK :/ nebo nějak nakopnout jak na to už sem pokoumal dost věcí ale vše na pytel tak nějak postrčit 

  4. já tě naučím základ možná ti to pomůže odrazí tě to nějak :d

    nevím v čím pracuješ tak uděláme třeba dini :d 

    tak někam kde mas  info si uděláme nějakou podmínku já budu psát jak kdybych to psal sobě :d pro blbce :d 

    enum Info
    {

       Autoskola,
       Motoskola,
       Body,
    }

    někam kde máš načítání  ale stačí to takto 

    public OnPlayerConnect(playerid)
    {

        PlayerInfo[playerid][Body] =  dini_Int(file, "Body");//načteme nějaké ty body

       return 1;
    }

    někam do Ukládání když se odpojí aby mu to uložilo 

    public OnPlayerDisconnect(playerid, reason)
    {

           dini_IntSet(file, "Body",PlayerInfo[playerid][Body]);

       return 1;
    }

    pokud už máš nějaká to /info tak by stačilo tam dat toto

    format(MAX_STR, sizeof(MAX_STR), "%s Počet Bodů:  %d\n", MAX_STR,PlayerInfo[playerid][Body]);

    Ted už by jsi měl mít body do budoucna a můžeš si  dělat co chceš už zaleží jen na podmínce jakou si uděláš pokud by si to chtěl jako jen odměnu tak nějakej příkaz pro admina

    CMD:body(playerid, params[])
    {
        if(PlayerInfo[playerid][AdminLevel] > 0)//tady si dej svoje podminky 
        {
                   new Pocet,duvod[40];
                   new id = strval(params);
                 if(strlen(params) > 40)                                 return SCM(playerid,0xFF0000AA,"1 - 40 znaků");
                if(Pocet < 1)
                if(sscanf(params,"uiz",id,Pocet,duvod))             return SCM(playerid,0xFF0000AA,"Nápověda: /gbody (ID) (ČÁSTKA) (DŮVOD)");
                else if(!IsPlayerConnected(id))                     return SCM(playerid,0xFF0000AA,"Zadané ID není připojeno na serveru!");
                else if(IsPlayerNPC(id))                             return SCM(playerid,0xFF0000AA,"Zadané ID má NPC!");
                else if(playerid == id && PlayerInfo[playerid][AdminLevel] < 6) return SCM(playerid,0xFF0000AA,"Nemůžeš poslat body sám sobě!");
                else if(strlen(duvod) < 3)                             return SCM(playerid,0xFF0000AA,"Nezadal jste důvod!");

                PlayerInfo[id][body] += Pocet;
                SCMTAF(128,0xFF0000AA,"*(A)* Administrátor %s poslal hráči %s %s bodů z důvodu: %s",PlayerName(playerid),PlayerName(id),Number(Pocet),duvod);
        }else SCM(playerid,0xFFFFFFAA,"SERVER: Příkaz neexistuje -> /help nebo /prikazy");
        return 1;
    }

    a to je asi vše  možná ti bude jen chybět dini.inc a zcmd.inc

    kod neni testovaný tak doufám že ti to nějak pomohlo :d pokud ne možná se sem zas podívám napis :d nebo tak :d neznám DreamGaming tak nevím co přesně chceš 

     

  5. Popis problému:

    ahoj delam si firmy a potrebuji poradit vse slape jak ma ale problem je v Create3DTextLabel kdyz koupim dum neukaze se majitel ale stale je tam mesto uz me to stve celej den predem diky za rady

     

    Chyby/varování kompilátoru a při běhu:

    --

     

    Kód:

     

    #include 
    
    //-----[ Define ]-----|
    #define MAX_PROPERTY      100
    #define MAX_PROPERTY_NAME 50
    //--------------------|
    
    //-----[ Enum & New ]-----|
    enum PROPERTY_INFO
    {
    Ne_Cena,
    Float:Ne_X,
    Float:Ne_Y,
    Float:Ne_Z,
    Ne_Majitel[MAX_PROPERTY_NAME],
    Ne_Dialog,
    Ne_Majitela,
    Ne_iDialog,
    PlatNemovitost,
    Ne_Pickup
    };
    new NemovitostInfo[MAX_PROPERTY][PROPERTY_INFO];
    new CountProperty = 0;
    new MajitelN[MAX_PROPERTY][MAX_PLAYERS];
    //------------------------|
    
    //-----[ Forward ]-----|
    forward VyplataNemovitosti(playerid);
    forward MultiiTimer(playerid);
    forward GetPlayerDistanceToPointEx(playerid,Float:x,Float:y,Float:z);
    forward IsPlayerInSphere(playerid,Float:x,Float:y,Float:z,radius);
    forward AddStaticProperty(const Pr_Name[], Float:Pr_X, Float:Pr_Y, Float:Pr_Z, Pr_Cena, Pr_Dialog, Pr_iDialog);
    //---------------------|
    
    
    //______________________________________________________________________________
    
    public AddStaticProperty(const Pr_Name[], Float:Pr_X, Float:Pr_Y, Float:Pr_Z, Pr_Cena, Pr_Dialog, Pr_iDialog)
    {
    if(CountProperty < MAX_PROPERTY)
    {
    
    format(NemovitostInfo[CountProperty][Ne_Majitel], MAX_PROPERTY_NAME, "%s", Pr_Name);
    NemovitostInfo[CountProperty][Ne_Cena]     = Pr_Cena;
    NemovitostInfo[CountProperty][Ne_X]        = Pr_X;
    NemovitostInfo[CountProperty][Ne_Y]        = Pr_Y;
    NemovitostInfo[CountProperty][Ne_Z]        = Pr_Z;
    NemovitostInfo[CountProperty][Ne_Dialog]   = Pr_Dialog;
    NemovitostInfo[CountProperty][Ne_iDialog]   = Pr_iDialog;
    NemovitostInfo[CountProperty][Ne_Majitela] = 0;
    NemovitostInfo[CountProperty][PlatNemovitost] = 0;
    NemovitostInfo[CountProperty][Ne_Pickup] = CreatePickup(1273,1,Pr_X,Pr_Y,Pr_Z);
    CountProperty ++;
    } else {
    printf("Je vysoký počet nemovitostí, je jich %d, a MAXimalne je %d !", CountProperty, MAX_PROPERTY);
    }
    }
    //==============================================================================
    public IsPlayerInSphere(playerid,Float:x,Float:y,Float:z,radius)
    {
    if(GetPlayerDistanceToPointEx(playerid,x,y,z) < radius) return 1;
    return 0;
    }
    //==============================================================================
    public GetPlayerDistanceToPointEx(playerid,Float:x,Float:y,Float:z)
    {
    new Float:x1,Float:y1,Float:z12,Float:tmpdis;
    GetPlayerPos(playerid,x1,y1,z12);
    tmpdis = floatsqroot(floatpower(floatabs(floatsub(x,x1)),2)
    +floatpower(floatabs(floatsub(y,y1)),2)+floatpower(floatabs(floatsub(z,z12)),2));
    return floatround(tmpdis);
    }
    //==============================================================================
    public MultiiTimer(playerid)
    {
    for(new p = 0; p< CountProperty; p++)
    {
    if(IsPlayerInSphere(playerid, NemovitostInfo[p][Ne_X], NemovitostInfo[p][Ne_Y] ,NemovitostInfo[p][Ne_Z], 2) == 1)
        {
            SendClientMessage(playerid, 0xFF0000FF, "L.ALT k zobrazeni menu nemovitosti.");
        }
    }
    }
    //==============================================================================
    public VyplataNemovitosti(playerid)
    {
        SendClientMessage(playerid, 0xFF0000FF, "[    $    ]: Nemovitosti byli vyplaceny !");
    for(new p = 0; p < CountProperty; p ++)
        {
            if(MajitelN[p][playerid] == 1)
                {
                    NemovitostInfo[p][PlatNemovitost] += NemovitostInfo[p][Ne_Cena];
                }
        }
    }
    //==============================================================================
    public OnFilterScriptInit()
    {
    SetTimer("MultiiTimer", 100, 1);
    SetTimer("VyplataNemovitosti", 60000*5, 1);
    //----------|
    AddStaticProperty("Firma", 2164.0728,1410.5341,10.8203, 3, 650, 651);
    //----------|
    for(new p = 0; p< CountProperty; p++)
    {
        new stringEX[100];
                new pstring[100];
    new buyyng[150];
    
    format(pstring,sizeof(pstring),"Majitel:%s \nCena: %d",NemovitostInfo[p][Ne_Majitela] = 0,NemovitostInfo[p][Ne_Cena]);
    Create3DTextLabel(pstring,  0x0000BBAA,NemovitostInfo[p][Ne_X], NemovitostInfo[p][Ne_Y] ,NemovitostInfo[p][Ne_Z], 40.0, 0, 0);
    format(buyyng, 150,"Majitel:%s \nCena: %d$",NemovitostInfo[p][Ne_Majitela] = 0, NemovitostInfo[p][Ne_Cena]);
    Create3DTextLabel(buyyng,0x00FF00FF,NemovitostInfo[p][Ne_X], NemovitostInfo[p][Ne_Y] ,NemovitostInfo[p][Ne_Z] + 1,80.0,0);
    }
    //----------|
    return 1;
    }
    //==============================================================================
    public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
    {
    if(newkeys == KEY_WALK)
    {
    for(new p=0; p< CountProperty; p++)
    {
    if(IsPlayerInSphere(playerid, NemovitostInfo[p][Ne_X], NemovitostInfo[p][Ne_Y] ,NemovitostInfo[p][Ne_Z], 2) == 1)
         {
    ShowPlayerDialog(playerid, NemovitostInfo[p][Ne_Dialog] , DIALOG_STYLE_LIST, "Nemovitost", "Koupit\nInvestovat\nProdat\nInformace\nVybrat plat z nemovitosti", "Potvrdit", "Nic");
    }
    }
    }
    return 1;
    }
    //==============================================================================
    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    for(new p = 0; p< CountProperty; p++)
    {
    if(dialogid == NemovitostInfo[p][Ne_Dialog])
        {
           if(response == 1)
           {
              if(listitem == 0)
              {
             if(GetPlayerMoney(playerid) < NemovitostInfo[p][Ne_Cena]) return SendClientMessage(playerid, 0xFF0000FF, "Nemas dostatek penez !");
                            if(NemovitostInfo[p][Ne_Majitela] == 1) return SendClientMessage(playerid, 0xFF0000FF, "Tuto nemovitost už někdo vlastní !");
    MajitelN[p][playerid] = 1;
                NemovitostInfo[p][Ne_Majitela] = 1;
                GivePlayerMoney(playerid, -NemovitostInfo[p][Ne_Cena]);
                SendClientMessage(playerid, 0xFF0000FF, "Koupil jsi si nemovitost !");
                DestroyPickup(NemovitostInfo[p][Ne_Pickup]);
    NemovitostInfo[p][Ne_Pickup] = CreatePickup(1272,1,NemovitostInfo[p][Ne_X], NemovitostInfo[p][Ne_Y] ,NemovitostInfo[p][Ne_Z]);
              }
             else if(listitem == 1)
                 {
                     if(MajitelN[p][playerid] == 0) return SendClientMessage(playerid, 0xFF0000FF, "Tato nemovitost není tvá !");
                     ShowPlayerDialog(playerid,NemovitostInfo[p][Ne_iDialog],DIALOG_STYLE_INPUT,"Investace","Napiš kolik chceš do své nemovitosti investovat:","Investovat","Nic");
                 }
             else if(listitem == 2)
                 {
                     if(MajitelN[p][playerid] == 0) return SendClientMessage(playerid, 0xFF0000FF, "Tato nemovitost není tvá !");
                     MajitelN[p][playerid] = 0;
                     NemovitostInfo[p][Ne_Majitela] = 0;
                     SendClientMessage(playerid, 0xFF0000FF, "Peníze z nemovitosti ti byli vráceny !");
                     GivePlayerMoney(playerid, NemovitostInfo[p][Ne_Cena]);
                     DestroyPickup(NemovitostInfo[p][Ne_Pickup]);
    NemovitostInfo[p][Ne_Pickup] = CreatePickup(1273,1,NemovitostInfo[p][Ne_X], NemovitostInfo[p][Ne_Y] ,NemovitostInfo[p][Ne_Z]);
                 }
             else if(listitem == 3)
                 {
                     SendClientMessage(playerid, 0xFF0000FF, "           [         Property         ]");
                     //---------|
                     new string[150];
                     format(string, 150, "Jméno Nemovitosti: %s", NemovitostInfo[p][Ne_Majitel]);
                     SendClientMessage(playerid, 0xFFFFFFFF, string);
                     new cena[150];
                     format(cena, 150, "Cena nemovitosti: %d$", NemovitostInfo[p][Ne_Cena]);
                     SendClientMessage(playerid, 0xFFFFFFFF, cena);
                     if(NemovitostInfo[p][Ne_Majitela] == 0) SendClientMessage(playerid, 0xFFFFFFFF, "Nemovitost: K pronájmu");
                     else if(NemovitostInfo[p][Ne_Majitela] == 1) SendClientMessage(playerid, 0xFFFFFFFF, "Nemovitost: Odkoupena");
                     //---------|
                     SendClientMessage(playerid, 0xFF0000FF, "_______________________________________");
                 }
    else if(listitem == 4)
    {
        if(MajitelN[p][playerid] == 0)    return SendClientMessage(playerid, 0xFF0000FF, "Tato nemovitost není tvá !");
        if(NemovitostInfo[p][PlatNemovitost] < 1) return SendClientMessage(playerid, 0xFF0000FF, "Tato nemovitost nema v sobě ani dolar !");
        GivePlayerMoney(playerid, NemovitostInfo[p][PlatNemovitost]);
        NemovitostInfo[p][PlatNemovitost] = 0;
        SendClientMessage(playerid, 0xFF0000FF, "Dostal jsi peníze !");
    }
           }
        }
    if(dialogid == NemovitostInfo[p][Ne_iDialog])
    {
           if(response == 1)
           {
               new string[150];
    if(!strlen(inputtext)) return ShowPlayerDialog(playerid,NemovitostInfo[p][Ne_iDialog],DIALOG_STYLE_INPUT,"Investace","Musíš napsat částku !:","Investovat","Nic");
               NemovitostInfo[CountProperty][Ne_Cena] += strval(inputtext);
               format(string, 150, "Zvíšil jsi cenu nemovitosti na %d$ !", NemovitostInfo[CountProperty][Ne_Cena]);
               SendClientMessage(playerid, 0xFF0000FF, string);
           }
        }
    }
    return 1;
    }
    //==============================================================================

     

     

     

    Dodatečné poznámky:

    --

  6. mela by to byt funkce ze pokud opusti zonu tak to napise ze hrac odesel z duelu a vyhodí ho to z duelu na pozici kde byl a nacte puvodni zbrane  a ume by to asi ani tam nemuselo byt protoze duel ma byt v kleci co sem vytvoril  a ve finále mě ani nedošlo že tu klec neopustí takže když se nikdo nepripoji bude to chtit prikaz /duelend  hrac %s  se odpojil z duelu icon_e_smile.gif a pokud by si byl tak ochoten a nevedl me spravnou cestou jak na to icon_e_smile.gif


    Takto by to bylo kdybych od dělal zonu ale neopustim duel dobrovolne pokud by se nepripojil souper

     

     

    #include

    #define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
    #define BARVA_MODRA 0x33CCFFAA
    #define BARVA_BILA 0xEFEFF7AA
    #define MAX_PLAYERS_EX 200

    forward duelTimerStart();
    forward duelTimerUpdate();

    enum DUEL_INFO
    {
    Started,
    Counter,
    Pocethracu,
    TimerStart,
    TimerUpdate
    }
    new Duel[DUEL_INFO];
    new IsPlayerInDuel[MAX_PLAYERS_EX];
    new DuelZbran[MAX_PLAYERS_EX];

    stock WeaponName(weapon)
    {
    new Nazev[50];

    if (weapon == 0) Nazev = "Nic";
    else if(weapon == 1) Nazev = "Boxer";
    else if(weapon == 2) Nazev = "Golfova hul";
    else if(weapon == 3) Nazev = "Hul";
    else if(weapon == 4) Nazev = "Nuz";
    else if(weapon == 5) Nazev = "Baseballka";
    else if(weapon == 6) Nazev = "Lopata";
    else if(weapon == 7) Nazev = "Kulecnikova hul";
    else if(weapon == 8) Nazev = "Katana";
    else if(weapon == 9) Nazev = "Motorovka";
    else if(weapon == 10) Nazev = "Dildo";
    else if(weapon == 11) Nazev = "Dildo2";
    else if(weapon == 12) Nazev = "Vibrator";
    else if(weapon == 13) Nazev = "Vibrator2";
    else if(weapon == 14) Nazev = "Kvetiny";
    else if(weapon == 15) Nazev = "Cane";
    else if(weapon == 16) Nazev = "Granat";
    else if(weapon == 17) Nazev = "Slzny plyn";
    else if(weapon == 18) Nazev = "Molotovuv koktejl";
    else if(weapon == 22) Nazev = "Kolt45";
    else if(weapon == 23) Nazev = "Pistole s tlumicem";
    else if(weapon == 24) Nazev = "Desert Eagle";
    else if(weapon == 25) Nazev = "Shotgun";
    else if(weapon == 26) Nazev = "Sawn-off Shotgun";
    else if(weapon == 27) Nazev = "Combat Shotgun";
    else if(weapon == 28) Nazev = "Uzi";
    else if(weapon == 29) Nazev = "Mp5";
    else if(weapon == 30) Nazev = "AK47";
    else if(weapon == 31) Nazev = "M4";
    else if(weapon == 32) Nazev = "Tec9";
    else if(weapon == 33) Nazev = "Rifle";
    else if(weapon == 34) Nazev = "Sniperka";
    else if(weapon == 35) Nazev = "Raketomet";
    else if(weapon == 36) Nazev = "Teplonavadeci Raketomet";
    else if(weapon == 37) Nazev = "Plamenomet";
    else if(weapon == 38) Nazev = "Minigun";
    else if(weapon == 39) Nazev = "Satchel";
    else if(weapon == 40) Nazev = "Bomba";
    else if(weapon == 41) Nazev = "Spray";
    else if(weapon == 42) Nazev = "Hasicak";
    else if(weapon == 43) Nazev = "Fotak";
    else if(weapon == 44) Nazev = "Noční vidění";
    else if(weapon == 45) Nazev = "Infračervená vize";
    else if(weapon == 46) Nazev = "Padak";

    return Nazev;
    }

    stock Jmeno(playerid)
    {
    new p[MAX_PLAYER_NAME];
    if(IsPlayerConnected(playerid)) GetPlayerName(playerid,p,MAX_PLAYER_NAME);
    return p;
    }

    IsNumeric(string[]){ for (new i = 0,j = strlen(string); i < j; i++) if(string > '9' || string < '0') return 0; return 1; }

    public duelTimerStart()
    {
    new string[10];
    Duel[Counter]--;
    if(Duel[Counter] > 0) Duel[TimerStart] = SetTimer("duelTimerStart",1000,0);
    for(new i=0; i< MAX_PLAYERS_EX; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(IsPlayerInDuel != 0)
    {
    if(Duel[Counter] > 0)
    {
    format(string,sizeof(string),"%d",Duel[Counter]);
    GameTextForPlayer(i,string,1000,4);
    }else{
    GameTextForPlayer(i,"~r~START!",2000,4);
    GivePlayerWeapon(i,DuelZbran,99999);
    }
    }
    }
    }
    return 1;
    }

    public duelTimerUpdate()
    {
    for(new i=0; i< MAX_PLAYERS_EX; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(IsPlayerInDuel != 0)
    {
    new Float:X,Float:Y,Float:Z;
    GetPlayerPos(i,X,Y,Z);
    if(Duel[Counter] == 0)
    {
    if(Duel[Pocethracu] == 1)
    {
    new string[150];
    format(string,sizeof(string),"Vitezem duelu je %s.",Jmeno(i));
    SendClientMessageToAll(BARVA_MODRA,string);
    KillTimer(Duel[TimerUpdate]);
    DuelZbran = 0;
    IsPlayerInDuel = 0;
    SpawnPlayer(i);
    Duel[started] = 0;
    Duel[Pocethracu] = 0;
    }
    }
    }else{
    DuelZbran = 0;
    IsPlayerInDuel = 0;
    SpawnPlayer(i);
    new string[150];
    format(string,sizeof(string),"Hrac %s opustil duel.",Jmeno(i));
    SendClientMessageToAll(BARVA_MODRA,string);
    Duel[Pocethracu] --;
    if(Duel[Pocethracu] == 0)
    {
    KillTimer(Duel[TimerUpdate]);
    Duel[started] = 0;
    }
    }
    }
    }
    return 1;
    }

    public OnPlayerCommandText(playerid,cmdtext[])
    {
    if(IsPlayerConnected(playerid))
    {
    dcmd(duel,4,cmdtext);
    dcmd(dueljoin,8,cmdtext);
    dcmd(duelguest,9,cmdtext);
    dcmd(duelweaponlist,14,cmdtext);
    }
    return 0;
    }

    dcmd_duel(playerid,params[])
    {
    #pragma unused params
    if(IsPlayerConnected(playerid))
    {
    SendClientMessage(playerid,BARVA_MODRA,"Duel:");
    SendClientMessage(playerid,BARVA_MODRA,"/dueljoin");
    SendClientMessage(playerid,BARVA_MODRA,"/duelstart");
    SendClientMessage(playerid,BARVA_MODRA,"/duelguest");
    SendClientMessage(playerid,BARVA_MODRA,"/duelweaponlist");
    }
    return 1;
    }

    dcmd_dueljoin(playerid,params[])
    {
    if(IsPlayerConnected(playerid))
    {
    new string[150];
    new zbranid=strval(params);
    if(!params[0]||!IsNumeric(params)) return SendClientMessage(playerid,BARVA_BILA,"[!] Použití: /dueljoin [zbranid]");
    else if(Duel[started] != 0) return SendClientMessage(playerid,BARVA_BILA,"[!] Duel jiz probiha,vyckejte!");
    else if(IsPlayerInDuel[playerid] != 0) return SendClientMessage(playerid,BARVA_BILA,"[!] Jiz jste v duelu!");
    else if(zbranid > 47 || zbranid < 0 || zbranid == 44 || zbranid == 45 || zbranid == 19 || zbranid == 20 || zbranid == 21 || zbranid == 38 || zbranid == 43) return SendClientMessage(playerid,BARVA_BILA,"[!] Spatne zvolena zbran! Mrknete se na /duelweaponlist");
    else
    {
    Duel[Pocethracu] ++ ;
    DuelZbran[playerid] = zbranid;
    IsPlayerInDuel[playerid] = 1;
    ResetPlayerWeapons(playerid);
    KillTimer(Duel[TimerUpdate]);
    Duel[TimerUpdate] = SetTimer("duelTimerUpdate",1000,1);
    Duel[Counter] = 3;
    SetPlayerHealth(playerid,100);
    SetPlayerArmour(playerid,0);
    SetPlayerInterior(playerid,0);
    format(string,sizeof(string),"Hrac %s byl pripojen do duelu se zbrani %s (%d)",Jmeno(playerid),WeaponName(zbranid),zbranid);
    SendClientMessageToAll(BARVA_MODRA,string);

    if(Duel[Pocethracu] == 1)
    {
    SetPlayerPos(playerid,536.2170,-1481.2561,717.2756);
    }
    else if(Duel[Pocethracu] == 2)
    {
    SetPlayerPos(playerid,556.7703,-1481.2313,717.2756);
    Duel[started] = 1;
    SendClientMessageToAll(BARVA_MODRA,"Duel zahajen,pripravit...");
    Duel[TimerStart] = SetTimer("duelTimerStart",1000,0);
    }
    }
    }
    return 1;
    }

    dcmd_duelweaponlist(playerid,params[])
    {
    #pragma unused params
    if(IsPlayerConnected(playerid))
    {
    SendClientMessage(playerid,BARVA_MODRA,"Duel Weapons List:");
    SendClientMessage(playerid,BARVA_MODRA,"Desert Eagle - 24");
    SendClientMessage(playerid,BARVA_MODRA,"Shotgun - 25");
    SendClientMessage(playerid,BARVA_MODRA,"Sawn Off Shotgun - 26");
    SendClientMessage(playerid,BARVA_MODRA,"Combat Shotgun - 27");
    SendClientMessage(playerid,BARVA_MODRA,"Uzi - 28");
    SendClientMessage(playerid,BARVA_MODRA,"MP5 - 29");
    SendClientMessage(playerid,BARVA_MODRA,"AK47 - 30");
    SendClientMessage(playerid,BARVA_MODRA,"M4 - 31");
    SendClientMessage(playerid,BARVA_MODRA,"Tec9 -32");
    }
    return 1;
    }

    dcmd_duelguest(playerid,params[])
    {
    #pragma unused params
    if(IsPlayerConnected(playerid))
    {
    new string[150];
    SetPlayerInterior(playerid,0);
    SetPlayerPos(playerid,539.7651,-1470.2284,716.8849);
    ResetPlayerWeapons(playerid);
    format(string,sizeof(string),"Hrac %s se prisel podivat na duel.",Jmeno(playerid));
    SendClientMessageToAll(BARVA_MODRA,string);
    }
    return 1;
    }

     


    vlaste se jen odelal radek ze zonou 

    if(X >=532.2701 && X <=559.5403 && Y >=-1481.0779 && Y <=-1481.0552)
    {
    ale jak ted ukoncit duel pomoci prikazu :) 
  7. Popis problému:

    Zdravím mam problem z pozici pro duel ale jde o pozici zony zmenil sem misto konanani duelu

    a tim padem se musi zmenit i zona duelu jde o 8 cisel pozic if(X >= && X <= && Y >= && Y <= ).

    Tato funkce ma vytvaret zonu duelu ale jak je tam dosadit tak aby to nevihazovalo :d

     

    Chyby/varování kompilátoru a při běhu:

    --

     

    Kód:

     

    [spoiler]Puvodni duel z fora:
    #include 
    
    #define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
    #define BARVA_MODRA 0x33CCFFAA
    #define BARVA_BILA 0xEFEFF7AA
    #define MAX_PLAYERS_EX 200
    
    forward duelTimerStart();
    forward duelTimerUpdate();
    
    enum DUEL_INFO
    {
    Started,
    Counter,
    Pocethracu,
    TimerStart,
    TimerUpdate
    }
    new Duel[DUEL_INFO];
    new IsPlayerInDuel[MAX_PLAYERS_EX];
    new DuelZbran[MAX_PLAYERS_EX];
    
    stock WeaponName(weapon)
    {
    new Nazev[50];
    
    if (weapon == 0) Nazev = "Nic";
    else if(weapon == 1) Nazev = "Boxer";
    else if(weapon == 2) Nazev = "Golfova hul";
    else if(weapon == 3) Nazev = "Hul";
    else if(weapon == 4) Nazev = "Nuz";
    else if(weapon == 5) Nazev = "Baseballka";
    else if(weapon == 6) Nazev = "Lopata";
    else if(weapon == 7) Nazev = "Kulecnikova hul";
    else if(weapon == 8) Nazev = "Katana";
    else if(weapon == 9) Nazev = "Motorovka";
    else if(weapon == 10) Nazev = "Dildo";
    else if(weapon == 11) Nazev = "Dildo2";
    else if(weapon == 12) Nazev = "Vibrator";
    else if(weapon == 13) Nazev = "Vibrator2";
    else if(weapon == 14) Nazev = "Kvetiny";
    else if(weapon == 15) Nazev = "Cane";
    else if(weapon == 16) Nazev = "Granat";
    else if(weapon == 17) Nazev = "Slzny plyn";
    else if(weapon == 18) Nazev = "Molotovuv koktejl";
    else if(weapon == 22) Nazev = "Kolt45";
    else if(weapon == 23) Nazev = "Pistole s tlumicem";
    else if(weapon == 24) Nazev = "Desert Eagle";
    else if(weapon == 25) Nazev = "Shotgun";
    else if(weapon == 26) Nazev = "Sawn-off Shotgun";
    else if(weapon == 27) Nazev = "Combat Shotgun";
    else if(weapon == 28) Nazev = "Uzi";
    else if(weapon == 29) Nazev = "Mp5";
    else if(weapon == 30) Nazev = "AK47";
    else if(weapon == 31) Nazev = "M4";
    else if(weapon == 32) Nazev = "Tec9";
    else if(weapon == 33) Nazev = "Rifle";
    else if(weapon == 34) Nazev = "Sniperka";
    else if(weapon == 35) Nazev = "Raketomet";
    else if(weapon == 36) Nazev = "Teplonavadeci Raketomet";
    else if(weapon == 37) Nazev = "Plamenomet";
    else if(weapon == 38) Nazev = "Minigun";
    else if(weapon == 39) Nazev = "Satchel";
    else if(weapon == 40) Nazev = "Bomba";
    else if(weapon == 41) Nazev = "Spray";
    else if(weapon == 42) Nazev = "Hasicak";
    else if(weapon == 43) Nazev = "Fotak";
    else if(weapon == 44) Nazev = "Noční vidění";
    else if(weapon == 45) Nazev = "Infračervená vize";
    else if(weapon == 46) Nazev = "Padak";
    
    return Nazev;
    }
    
    stock Jmeno(playerid)
    {
    new p[MAX_PLAYER_NAME];
    if(IsPlayerConnected(playerid)) GetPlayerName(playerid,p,MAX_PLAYER_NAME);
    return p;
    }
    
    IsNumeric(string[]){ for (new i = 0,j = strlen(string); i < j; i++) if(string[i] > '9' || string[i] < '0') return 0; return 1; }
    
    public duelTimerStart()
    {
    new string[10];
    Duel[Counter]--;
    if(Duel[Counter] > 0) Duel[TimerStart] = SetTimer("duelTimerStart",1000,0);
    for(new i=0; i< MAX_PLAYERS_EX; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(IsPlayerInDuel[i] != 0)
    {
    if(Duel[Counter] > 0)
    {
    format(string,sizeof(string),"%d",Duel[Counter]);
    GameTextForPlayer(i,string,1000,4);
    }else{
    GameTextForPlayer(i,"~r~START!",2000,4);
    GivePlayerWeapon(i,DuelZbran[i],99999);
    }
    }
    }
    }
    return 1;
    }
    
    public duelTimerUpdate()
    {
    for(new i=0; i< MAX_PLAYERS_EX; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(IsPlayerInDuel[i] != 0)
    {
    new Float:X,Float:Y,Float:Z;
    GetPlayerPos(i,X,Y,Z);
    if(X >= 2445.0791 && X = 2350.9741 && Y  47 || zbranid < 0 || zbranid == 44 || zbranid == 45 || zbranid == 19 || zbranid == 20 || zbranid == 21 || zbranid == 38 || zbranid == 43) return SendClientMessage(playerid,BARVA_BILA,"[!] Spatne zvolena zbran! Mrknete se na /duelweaponlist");
    else
    {
    Duel[Pocethracu] ++ ;
    DuelZbran[playerid] = zbranid;
    IsPlayerInDuel[playerid] = 1;
    ResetPlayerWeapons(playerid);
    KillTimer(Duel[TimerUpdate]);
    Duel[TimerUpdate] = SetTimer("duelTimerUpdate",1000,1);
    Duel[Counter] = 3;
    SetPlayerHealth(playerid,100);
    SetPlayerArmour(playerid,0);
    SetPlayerInterior(playerid,0);
    format(string,sizeof(string),"Hrac %s byl pripojen do duelu se zbrani %s (%d)",Jmeno(playerid),WeaponName(zbranid),zbranid);
    SendClientMessageToAll(BARVA_MODRA,string);
    
    if(Duel[Pocethracu] == 1)
    {
    SetPlayerPos(playerid,2449.7778,2378.5486,71.0496);
    }
    else if(Duel[Pocethracu] == 2)
    {
    SetPlayerPos(playerid,2489.5415,2378.6658,71.0496);
    Duel[Started] = 1;
    SendClientMessageToAll(BARVA_MODRA,"Duel zahajen,pripravit...");
    Duel[TimerStart] = SetTimer("duelTimerStart",1000,0);
    }
    }
    }
    return 1;
    }
    
    dcmd_duelweaponlist(playerid,params[])
    {
    #pragma unused params
    if(IsPlayerConnected(playerid))
    {
    SendClientMessage(playerid,BARVA_MODRA,"Duel Weapons List:");
    SendClientMessage(playerid,BARVA_MODRA,"Desert Eagle - 24");
    SendClientMessage(playerid,BARVA_MODRA,"Shotgun - 25");
    SendClientMessage(playerid,BARVA_MODRA,"Sawn Off Shotgun - 26");
    SendClientMessage(playerid,BARVA_MODRA,"Combat Shotgun - 27");
    SendClientMessage(playerid,BARVA_MODRA,"Uzi - 28");
    SendClientMessage(playerid,BARVA_MODRA,"MP5 - 29");
    SendClientMessage(playerid,BARVA_MODRA,"AK47 - 30");
    SendClientMessage(playerid,BARVA_MODRA,"M4 - 31");
    SendClientMessage(playerid,BARVA_MODRA,"Tec9 -32");
    }
    return 1;
    }
    
    dcmd_duelguest(playerid,params[])
    {
    #pragma unused params
    if(IsPlayerConnected(playerid))
    {
    new string[150];
    SetPlayerInterior(playerid,0);
    SetPlayerPos(playerid,2460.1892,2336.0178,82.7734);
    ResetPlayerWeapons(playerid);
    format(string,sizeof(string),"Hrac %s se prisel podivat na duel.",Jmeno(playerid));
    SendClientMessageToAll(BARVA_MODRA,string);
    }
    return 1;
    }[/spoiler]

     

     

     

    Dodatečné poznámky:

    Mě jde vlastne o tyto pozice

    if(X >= 2445.0791 && X <= 2497.3074 && Y >= 2350.9741 && Y <= 2402.0007)

    a zde sou me souradnice kde by se to melo odehravat (místo je ve vzduchu v kleci)

    AddPlayerClass(276,537.8679,-1472.1122,716.8849,218.0587,0,0,0,0,0,0); // arena

    AddPlayerClass(276,554.3687,-1488.7344,716.8849,44.4938,0,0,0,0,0,0); // arena

    ja to mel takto:

    if(X >= 537.8679 && X <= 554.3687 && Y >= -1472.1122 && Y <= -1488.7344)

    ale jak sem zjistil tak je to spatne :)

    předem diky za pomoc a vysvětlení

  8. diky moc :) a ja si tim tady lamu hlavu uz 2 dny :d a jen carka :d 


    Jeste bych mel jeden dotaz jak to udelat aby se sprava zobrazila v pravo dole a pokud by jste nekdo byl tak ochotnej a vysvetlil mi jak ten warp muzu udelat placenej pro hrace 

  9. Popis problému:

     

    Zdravím potřeboval bych zkušenou radu nějakého pawnera dělám si warpy na server jak odportovani tak i ukládaní pozice pro warp ale neustale mi skáče chyba error to jste asi nečekali .icon_e_biggrin.gif

     

     

    Chyby/varování kompilátoru a při běhu:

     

    C:\Users\lenovo\Desktop\gta\Nová složka\pwn zaloha – kopie (4) – kopie\Infinite Field-5.77.pwn(6383) : error 020: invalid symbol name ""

    C:\Users\lenovo\Desktop\gta\Nová složka\pwn zaloha – kopie (4) – kopie\Infinite Field-5.77.pwn(6383) : warning 215: expression has no effect

    C:\Users\lenovo\Desktop\gta\Nová složka\pwn zaloha – kopie (4) – kopie\Infinite Field-5.77.pwn(6383) : warning 215: expression has no effect

    C:\Users\lenovo\Desktop\gta\Nová složka\pwn zaloha – kopie (4) – kopie\Infinite Field-5.77.pwn(6383) : warning 215: expression has no effect

    C:\Users\lenovo\Desktop\gta\Nová složka\pwn zaloha – kopie (4) – kopie\Infinite Field-5.77.pwn(6383) : error 001: expected token: ";", but found ")"

    C:\Users\lenovo\Desktop\gta\Nová složka\pwn zaloha – kopie (4) – kopie\Infinite Field-5.77.pwn(6383) : error 029: invalid expression, assumed zero

    C:\Users\lenovo\Desktop\gta\Nová složka\pwn zaloha – kopie (4) – kopie\Infinite Field-5.77.pwn(6383) : fatal error 107: too many error messages on one line

     

    Kód:

     

     

    new Float:pos[3];
    new sprava[80], Meno[MAX_PLAYER_NAME];
    
    
    if (strcmp("/lv", cmdtext, true, 10) == 0)
    {
    if(IsPlayerConnected(playerid)) // pokud je hráč připojen
    {
    new car = GetPlayerVehicleID(playerid); // vytvoří proměnu pro hráčovo auto
    
    if(!IsPlayerInAnyVehicle(playerid)) // pokud není v žádném autě stane se...
    {
    SetPlayerPos(playerid,2024.0475,1250.5278,10.8203); // SetPlayerPos
    GetPlayerName(playerid,Meno,sizeof(Meno));
    [b]format(sprava,sizeof,(sprava),"Hrac se portnul do /lv!",Meno); //chybný řádek [/b]
    SendClientMessageToAll(-1,sprava);
    SetPlayerInterior(playerid, 0); // pro jistotu, Nastaví interier na 0.
    }else{ // nebo, pokud je v autě stane s
    SetVehiclePos(car,2024.0475,1250.5278,10.8203); // Nastaví-Pozici-Autu
    [b]format(sprava,sizeof,(sprava),"Hrac se portnul do /lv!",Meno); [/b] // zpráva s autem
    [font=tahoma, helvetica, arial, sans-serif][size=3][background=#fdfdfd]SendClientMessageToAll(-1,sprava);[/size][/font][/background]
    SetPlayerInterior(playerid, 0);
    }
    }
    return 1;
    

     

     

     

    Dodatečné poznámky:

    Předem diky za pomoc a ještě bych měl jeden dotaz chtěl bych když se od portuju aby se ta informace napsala v pravo dole ale aby zustal klasicky chet v pravo na hore

  10. vypada to asi tak to 
     
    #include <a_samp>
    #define MAX_PLAYERS_EX 100
     
    #include <DOF2.pwn>
    #define GiveMoney               GivePlayerMoney
    #define dini_Exists        DOF2_FileExists
    #define dini_Remove         DOF2_RemoveFile
    #define dini_Create         DOF2_CreateFile
    #define dini_Set    DOF2_SetString
    #define dini_Get         DOF2_GetString
    #define dini_IntSet   DOF2_SetInt
    #define dini_Int         DOF2_GetInt
    #define dini_BoolSet            DOF2_SetBool
    #define dini_Bool               DOF2_GetBool
    #define dini_FloatSet DOF2_SetFloat
    #define dini_Float       DOF2_GetFloat
    #define dini_Unset       DOF2_Unset
    #define dini_Isset       DOF2_IsSet
    #define dini_Write              DOF2_Exit
     
    a zde je ten error
    C:\Users\lenovo\Downloads\HouseSystem.pwn(21) : fatal error 100: cannot read from file: "DOF2.pwn"
     
    Compilation aborted.Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase
     
     
    1 Error.
     

     

  11. Zdravím potřeboval bych poradit stáhl jsem si Housesystem od qwera.

    .
    Jde o to ze když chci převést pwn do amx pomoci F5 naskočí mi chyba erorr řádek (21).
    21.#include
    22.#define GiveMoney GivePlayerMoney
    23.#define dini_Exists DOF2_FileExists
    atd.....
    Potřeboval bych vědět kde je tam a chyba a nějak opravit.
    Jsu začátečník v pawnu tak se v něm nevyznám a hledám radu jak zprovoznit tento housesystem.

    Díky za každou radu.

  12. Popis problému:

    Zdravím potřeboval bych poradit stáhl jsem si Housesystem od qwera.

    (https://www.youtube.com/watch?v=6IDu0mWwqo4).
    Jde o to ze když chci převést pwn do amx pomoci F5 naskočí mi chyba erorr řádek (21).
    Potřeboval bych vědět kde je tam a chyba a nějak opravit.
    Jsu začátečník v pawnu tak se v něm nevyznám a hledám radu jak zprovoznit tento housesystem.
    Díky za každou radu.

    Chyby/varování kompilátoru a při běhu:
    erorr řádek (21)

    Kód:

     



    #include
    #define GiveMoney GivePlayerMoney
    #define dini_Exists DOF2_FileExists

     




    Dodatečné poznámky:
    --

×
×
  • Create New...