Skocz do zawartości
Wiosna w obiektywie! Konkurs fotograficzny - Weź udział! ×
Forum
AAAAAAAAAAAAAAAAAAAAAAAAAAA

BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB

AAAAAAAAAAAAAAAAAAAAAAAAAAA

BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB

AAAAAAAAAAAAAAAAAAAAAAAAAAA

BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB

AAAAAAAAAAAAAAAAAAAAAAAAAAA

BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB

Forum
AAAAAAAAAAAAAAAAAAAAAAAAAAA

BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB

AAAAAAAAAAAAAAAAAAAAAAAAAAA

BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB

AAAAAAAAAAAAAAAAAAAAAAAAAAA

BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB

AAAAAAAAAAAAAAAAAAAAAAAAAAA

BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB

AAAAAAAAAAAAAAAAAAAAAAAAAAA

BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB

Forum
AAAAAAAAAAAAAAAAAAAAAAAAAAA

BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB

AAAAAAAAAAAAAAAAAAAAAAAAAAA

BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB

AAAAAAAAAAAAAAAAAAAAAAAAAAA

BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB

Forum
AAAAAAAAAAAAAAAAAAAAAAAAAAA

BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB

Nowy szablon forum
csowicze.pl


Przygotowaliśmy dla Was nowy wygląd forum! Na pewno znajdziecie rzeczy, które można ulepszyć. Dajcie nam znać w dedykowanym wątku. Wasza opinia jest dla nas ważna!

Czytaj więcej1

XXXXXXXXXXXXXXX


Przygotowaliśmy dla Was nowy wygląd forum! Na pewno znajdziecie rzeczy, które można ulepszyć. Dajcie nam znać w dedykowanym wątku. Wasza opinia jest dla nas ważna!

Czytaj więcej2

CCCCCCCCCCCCCCC


Przygotowaliśmy dla Was nowy wygląd forum! Na pewno znajdziecie rzeczy, które można ulepszyć. Dajcie nam znać w dedykowanym wątku. Wasza opinia jest dla nas ważna!

Czytaj więcej3

Rekomendowane odpowiedzi

Napisano
Jak zrobić swojego questa by DarkGL.



//questy
//Autor DarkGL : )
new quest_gracza[33];
new ile_juz[33];


//przedzial , ile ,kogo , nagroda expa, vip 1 tak 0 nie
new questy[][]={
{1,2,Ninja,500,0},
{1,3,Mag,1200,1},
{1,6,Zabojca,2000,0},
{2,6,Hunter,5000,0},
{2,15,Barbarzynca,15000,1},
{2,20,Paladyn,20000,1},
{3,65,Barbarzynca,150000,1},
{3,120,Paladyn,200000,1}
}


new vault_questy;
new vault_questy2;


//od , do , hp
new prze[][]={
{1,50,20},
{51,80,40},
{81,140,60}
}


new prze_wybrany[33]


new questy_info[][]={
"Zabij 2 Ninje (Nagroda 500 doswiadczenia)",
"Zabij 3 Magow (Nagroda 1200 doswiadczenia)",
"Zabij 6 Zabojcow (Nagroda 2000 doswiadczenia)",
"Zabij 6 Lowcow (Nagroda 5000 doswiadczenia)",
"Zabij 15 Barbarzyncow (Nagroda 15000 doswiadczenia)",
"Zabij 20 Paladynow (Nagroda 20000 doswiadczenia)",
"Zabij 65 Barbarzyncow (Nagroda 150000 doswiadczenia)",
"Zabij 120 Paladynow (Nagroda 200000 doswiadczenia)"
}


new questy_zabil[][]={
"Ninjow",
"Magow",
"Zabojcow",
"Lowcow",
"Barbarzyncow",
"Paladynow",
"Barbarzyncow",
"Paladynow"
}2. w plugin_init dodajemy
vault_questy = nvault_open("Questy");
vault_questy2 = nvault_open("Questy2");


register_clcmd("say /questy","menu_questow")
register_clcmd("say /quest","menu_questow")


3.w dowolnym miejscu w kodzie dodajemy



public menu_questow(id){
if(quest_gracza[id] == -1 || quest_gracza[id] == -2){


new menu = menu_create("Menu Questow","menu_questow_handle")
new formats[128]
for(new i = 0;i<sizeof prze;i++){
formatex(formats,127,"Questy od %d do %d poziomu",prze[i][0],prze[i][1]);
menu_additem(menu,formats)
}
menu_display(id,menu,0)
}
else
{
client_print(id,print_chat,"Wykonaj najpierw poprzednie zadanie")
}
}


public menu_questow_handle(id,menu,item){
if(item == MENU_EXIT){
menu_destroy(menu);
return PLUGIN_CONTINUE;
}
if(player_lvl[id] < prze[item][0]){
client_print(id,print_chat,"Masz za maly level!");
menu_questow(id)
menu_destroy(menu);
return PLUGIN_CONTINUE;
}
new formats[128]
formatex(formats,127,"Questy od %d do %d poziomu",prze[item][0],prze[item][1]);
new menu2 = menu_create(formats,"menu_questow_handle2")
for(new i = 0;i<sizeof(questy);i++){
if(questy[i][0] == item+1){
menu_additem(menu2,questy_info[i]);
}
}
menu_setprop(menu2, MPROP_EXITNAME, "Wyjdz");
menu_setprop(menu2, MPROP_BACKNAME, "Poprzednia strona");
menu_setprop(menu2, MPROP_NEXTNAME, "Nastepna strona");
prze_wybrany[id] = item+1;
menu_display(id,menu2)
return PLUGIN_CONTINUE;
}


public zapisz_questa(id,quest){
new name[64];
get_user_name(id,name,63)
strtolower(name)
new key[64];
format(key,63,"questy-%i-%s-%i",player_class[id],name,quest);
nvault_set(vault_questy,key,"1");
}


public zapisz_aktualny_quest(id){
new name[64];
get_user_name(id,name,63)
strtolower(name)
new key[256];
format(key,255,"questy-%d-%s",player_class[id],name);
new data[32]
formatex(data,charsmax(data),"#%d#%d",quest_gracza[id]+1,ile_juz[id]);
nvault_set(vault_questy2,key,data);
}


public wczytaj_aktualny_quest(id){
new name[64];
get_user_name(id,name,63)
strtolower(name)
new key[256];
format(key,255,"questy-%d-%s",player_class[id],name);
new data[32];
nvault_get(vault_questy2,key,data,31);
replace_all(data,31,"#"," ");
new questt[32],ile[32]
parse(data,questt,31,ile,31)
ile_juz[id] = str_to_num(ile)
return str_to_num(questt)-1
}


public wczytaj_questa(id,quest){
new name[64];
get_user_name(id,name,63)
strtolower(name)
new key[64];
format(key,63,"questy-%i-%s-%i",player_class[id],name,quest);
new data[64];
nvault_get(vault_questy,key,data,63);
return str_to_num(data);
}


public menu_questow_handle2(id,menu,item){
if(item == MENU_EXIT){
menu_destroy(menu);
return PLUGIN_CONTINUE;
}
new ile2 = 0;
for(new i = 0;i<sizeof(questy);i++){
if(questy[i][0] != prze_wybrany[id]){
continue;
}
if(ile2 == item){
item = i;
break;
}
ile2++;
}
if(questy[item][4] && !(get_user_flags(id) & ADMIN_LEVEL_H)){
client_print(id,print_chat,"Ten quest jest tylko dla vipow! Aby kupic vipa wejdz na forum amxx.pl");
menu_questow(id)
menu_destroy(menu);
return PLUGIN_CONTINUE;
}
if(wczytaj_questa(id,item)){
client_print(id,print_chat,"Wykonales juz to zadanie!");
menu_questow(id)
menu_destroy(menu);
return PLUGIN_CONTINUE;
}
quest_gracza[id] = item;
ile_juz[id] = 0
zapisz_aktualny_quest(id)
client_print(id,print_chat,"Wybrales zadanie: %s powodzenia !",questy_info[item]);
quest_gracza[id] = wczytaj_aktualny_quest(id);
menu_destroy(menu);
return PLUGIN_CONTINUE;
}


4.w funkcji DeathMsg

w warunku


if (is_user_connected(kid) && is_user_connected(vid) && get_user_team(kid) != get_user_team(vid))
{

dodajemy


if(quest_gracza[kid] != -1){
if(player_class[vid] == questy[quest_gracza[kid]][2]){
ile_juz[kid]++;
zapisz_aktualny_quest(kid)
}
if(ile_juz[kid] == questy[quest_gracza[kid]][1]){
client_print(kid,print_chat,"Wykonales zadanie %s gratulacje otrzymujesz %i expa!",questy_info[quest_gracza[kid]],questy[quest_gracza[kid]][3])
zapisz_questa(kid,quest_gracza[kid])
Give_Xp(kid,questy[quest_gracza[kid]][3]);
quest_gracza[kid] = -1;
zapisz_aktualny_quest(kid)
}
else
{
client_print(kid,print_chat,"Zabiles %i/%i %s",ile_juz[kid],questy[quest_gracza[kid]][1],questy_zabil[quest_gracza[kid]])
                        }
}

tak to ma wyglądać 



if (is_user_connected(kid) && is_user_connected(vid) && get_user_team(kid) != get_user_team(vid))
{
show_deadmessage(kid,vid,headshot,weaponname)
create_itm(vid,0,"losowy item")
award_kill(kid,vid)
add_respawn_bonus(vid)
add_bonus_explode(vid)
add_barbarian_bonus(kid)
//mana_gracza[kid]+=1
//mana_gracza[headshot]+=2
if (player_class[kid] == Barbarzynca)
refill_ammo(kid)
if (player_class[kid] == Griswold)
refill_ammo(kid)
if (player_class[kid] == Kowal)
refill_ammo(kid)
if (player_class[kid] == Demonolog)
refill_ammo(kid)
set_renderchange(kid)
savexpcom(vid)
if(quest_gracza[kid] != -1){
if(player_class[vid] == questy[quest_gracza[kid]][2]){
ile_juz[kid]++;
zapisz_aktualny_quest(kid)
}
if(ile_juz[kid] == questy[quest_gracza[kid]][1]){
client_print(kid,print_chat,"Wykonales zadanie %s gratulacje otrzymujesz %i expa!",questy_info[quest_gracza[kid]],questy[quest_gracza[kid]][3])
zapisz_questa(kid,quest_gracza[kid])
Give_Xp(kid,questy[quest_gracza[kid]][3]);
quest_gracza[kid] = -1;
zapisz_aktualny_quest(kid)
}
else
{
client_print(kid,print_chat,"Zabiles %i/%i %s",ile_juz[kid],questy[quest_gracza[kid]][1],questy_zabil[quest_gracza[kid]])
}
}
}


5. 


quest_gracza[id] = wczytaj_aktualny_quest(id);

musimy to dodać po całym switch w funkcji handle menu wyboru klas

dużo diablo modów dużo menów dlatego tylko przyklad



public PokazMeni(id, key)

/* Menu:
* Wybierz klase:
* 1:Czarodziejka
* 2:Druid
* 3:Paladyn
* 4:Zabojczyni
* 5:Nekromanta
* 6:Barbarzynca
* 7:Ninja
* 8:Amazonka
* 0:Wstecz
*/
new lx[28] // <-- tutaj wpisz liczbę swoich klas + 1(none)
g_haskit[id] = 0
c_shake[id]=0
c_damage[id]=0
c_jump[id]=0
c_mine[id]=0
c_respawn[id]=0
c_vampire[id]=0
zmiana_skinu[id]=0
switch(key) 

    case 0: 
    {    
        player_class[id] = Mag
c_shake[id]=20
        LoadXP(id, player_class[id])        
    }
    case 1: 
    {    
        player_class[id] = Mnich
c_damage[id]=3
zmiana_skinu[id]=1
changeskin(id,0)
        LoadXP(id, player_class[id])
    }
    case 2: 
    {    
        player_class[id] =  Paladyn
        LoadXP(id, player_class[id])
    }
    case 3: 
    {    
        player_class[id] = Zabojca
c_jump[id]=1
c_mine[id]=2
        LoadXP(id, player_class[id])
    }
    case 4: 
    {            
        player_class[id] = Nekromanta
        g_haskit[id] = 1
c_respawn[id]=4
c_vampire[id]=random_num(1,3)
        LoadXP(id, player_class[id])
    }
    case 5: 
    {    
        player_class[id] = Barbarzynca      
        LoadXP(id, player_class[id])
    }
    case 6: 
    {    
        player_class[id] = Ninja
        LoadXP(id, player_class[id])
    }
    case 7: 
    {    
        player_class[id] = Hunter
        g_GrenadeTrap[id] = 1    
        LoadXP(id, player_class[id])
    }
    case 9: 
    { 
        select_class(id,lx)
    }
}
CurWeapon(id)
quest_gracza[id] = wczytaj_aktualny_quest(id);
give_knife(id)


return PLUGIN_HANDLED
}


Wiem jestem cienki w pisaniu poradników : D

Napisano (edytowane)

Dobry poradnik fajnie fajnie, ale to nie jemu dziękujcie tylko osobie która to wykonała (bo on to tylko przekopiował) : DarkGl (jakby ktoś nie wiedział: Administrator sieci AmxxSupport)

Edytowane przez Shadowek
Napisano

Shadowek, Masz rację, niech nie dziękują Mi tylko Jemu, żeby nikt się nie czepiał - Ja nigdzie nie napisałem że poradnik jest mojego autorstwa.

Napisano

Shadowek, Masz rację, niech nie dziękują Mi tylko Jemu, żeby nikt się nie czepiał - Ja nigdzie nie napisałem że poradnik jest mojego autorstwa.

Tylko, żebyś sobie nie pomyślał, że chciałem cię obrazić nic z tych rzeczy. Ja tylko im napisałem, że to wykonał DarkGL, ponieważ niektórzy chyba nie czytają początku :)

Napisano

Wiadomość wygenerowana automatycznie

 

temat_zamkniety.png
Powód: Dzięki za poradnik, zamykam

 

Jeżeli się z tym nie zgadzasz raportuj ten post a moderator lub administrator rozpatrzy go ponownie.
Z pozdrowieniami.
Administracja CSowicze.pl

  • 6 miesięcy później...
Napisano

Wiadomość wygenerowana automatycznie

 

temat_zamkniety.png
Powód: zamek

 

Jeżeli się z tym nie zgadzasz raportuj ten post a moderator lub administrator rozpatrzy go ponownie.
Z pozdrowieniami.
Administracja CSowicze.pl

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie