Łatwe dodawanie klas + nowe menu
G[o]Q
18.06.2010
Opisze jak zrobic menu w nowym stylu oraz jak zrobic zeby dodanie pustej klasy ograniczalo sie do edycji 3 linijek bo widze ze niektorzy sobie nie radza z poradnikiem kyku.
1: Wiec zaczynamy na poczatek menu.
2: Teraz zmiany ulatwiajace nam edycje kodu ogranicza sie to w zasadzie do uzycia funkcji sizeof
a) Szukamy funkcji
to samo robimy z petla w funkcji
c) teraz podmieniamy funkcje
na
3. W zasadzie mozemy na tym poprzestac ale chcac jeszcze bardziej ulatwic dodawanie klas mozemy zamienic
wiem ze to troche nieoptymalne wiec mozna ten etap opuscic jesli jednak chcemy kontynuowac to do plugin_init dodajemy
i to by bylo wszystko trzeba pamietac ze po dodaniu klas potrzebny reset tabeli
zeby dodac klase dodajemy nazwe klasy po przecinku do
EDIT
w zalaczniku daje gotowe sma.
Użytkownik G[o]Q edytował ten post 25.06.2010 10:37
1: Wiec zaczynamy na poczatek menu.
Spoiler
2: Teraz zmiany ulatwiajace nam edycje kodu ogranicza sie to w zasadzie do uzycia funkcji sizeof
a) Szukamy funkcji
i w niej zamieniamycreate_klass(id)
for(new i=1;i<9;i++)na
for(new i=1;i<sizeof(race_heal);i++)uzylem race_heal dlatego ze jest to tablica jednowymiarowa i majaca tyle elementow ile mamy klas (nie mialem czasu sprawdzic jak dziala sizeof na wielowymiarowych)
to samo robimy z petla w funkcji
LoadAVG()
c) teraz podmieniamy funkcje
select_class_query(id) i select_class_handle(FailState,Handle:Query,Error[],Errcode,Data[],DataSize)
na
Spoiler
3. W zasadzie mozemy na tym poprzestac ale chcac jeszcze bardziej ulatwic dodawanie klas mozemy zamienic
new player_class_lvl[33][9]na
new player_class_lvl[33][33]oraz
new srv_avg[9] = {1,1,1,1,1,1,1,1,1}na
new srv_avg[33]
wiem ze to troche nieoptymalne wiec mozna ten etap opuscic jesli jednak chcemy kontynuowac to do plugin_init dodajemy
for(new i=0;i<sizeof(race_heal);i++) srv_avg[i]=1
i to by bylo wszystko trzeba pamietac ze po dodaniu klas potrzebny reset tabeli
zeby dodac klase dodajemy nazwe klasy po przecinku do
new Race[][] = { "None","Mag","Mnich","Paladyn","Zabojca","Nekromanta","Barbarzynca", "Ninja", "Lowca" }//zmienione zakresy tablic na [][]oraz do
enum { NONE = 0, Mag, Mnich, Paladyn, Zabojca, Nekromanta, Barbarzynca, Ninja, Hunter }// bez ""i dodajemy hp startowe
new race_heal[] = { 100,95,150,130,100,90,110,170,120 }
EDIT
w zalaczniku daje gotowe sma.
Załączone pliki
Użytkownik G[o]Q edytował ten post 25.06.2010 10:37
czarasd 18.06.2010
Qoku napracowales sie zaraz to sprawdze. Oczywiscie zasluzony .
Ps: dobrze zebys jeszce mi odpisał PW
Robilem jak w tutorialu i przy komplikacji :
../uploaded/4c1be09fd9ac3.sma(4612) : error 055: start of function body without function header
../uploaded/4c1be09fd9ac3.sma(4613) : error 001: expected token: ";", but found "-integer value-"
../uploaded/4c1be09fd9ac3.sma(4614) : error 010: invalid function or declaration
../uploaded/4c1be09fd9ac3.sma(4619) : error 010: invalid function or declaration
../uploaded/4c1be09fd9ac3.sma(4623) : error 010: invalid function or declaration
../uploaded/4c1be09fd9ac3.sma(4625) : error 010: invalid function or declaration
../uploaded/4c1be09fd9ac3.sma(4629) : error 010: invalid function or declaration
../uploaded/4c1be09fd9ac3.sma(4632) : error 010: invalid function or declaration
../uploaded/4c1be09fd9ac3.sma(4636) : error 010: invalid function or declaration
../uploaded/4c1be09fd9ac3.sma(4639) : error 010: invalid function or declaration
../uploaded/4c1be09fd9ac3.sma(4644) : error 010: invalid function or declaration
../uploaded/4c1be09fd9ac3.sma(4648) : error 029: invalid expression, assumed zero
../uploaded/4c1be09fd9ac3.sma(4648 -- 4650) : warning 215: expression has no effect
../uploaded/4c1be09fd9ac3.sma(4650) : error 054: unmatched closing brace
../uploaded/4c1be09fd9ac3.sma(4651) : error 010: invalid function or declaration
../uploaded/4c1be09fd9ac3.sma(4654) : error 021: symbol already defined: "select_class"
../uploaded/4c1be09fd9ac3.sma(8301) : warning 203: symbol is never used: "i"
../uploaded/4c1be09fd9ac3.sma(8301) : warning 203: symbol is never used: "id"
../uploaded/4c1be09fd9ac3.sma(8301) : warning 203: symbol is never used: "lx"
15 Errors.
Could not locate output file ../compiled/4c1be09fd9ac3.amx (compile failed).
sma : http://www.speedysha...ablofullmax.txt
Użytkownik czarasd edytował ten post 18.06.2010 20:22
Ps: dobrze zebys jeszce mi odpisał PW
Robilem jak w tutorialu i przy komplikacji :
../uploaded/4c1be09fd9ac3.sma(4612) : error 055: start of function body without function header
../uploaded/4c1be09fd9ac3.sma(4613) : error 001: expected token: ";", but found "-integer value-"
../uploaded/4c1be09fd9ac3.sma(4614) : error 010: invalid function or declaration
../uploaded/4c1be09fd9ac3.sma(4619) : error 010: invalid function or declaration
../uploaded/4c1be09fd9ac3.sma(4623) : error 010: invalid function or declaration
../uploaded/4c1be09fd9ac3.sma(4625) : error 010: invalid function or declaration
../uploaded/4c1be09fd9ac3.sma(4629) : error 010: invalid function or declaration
../uploaded/4c1be09fd9ac3.sma(4632) : error 010: invalid function or declaration
../uploaded/4c1be09fd9ac3.sma(4636) : error 010: invalid function or declaration
../uploaded/4c1be09fd9ac3.sma(4639) : error 010: invalid function or declaration
../uploaded/4c1be09fd9ac3.sma(4644) : error 010: invalid function or declaration
../uploaded/4c1be09fd9ac3.sma(4648) : error 029: invalid expression, assumed zero
../uploaded/4c1be09fd9ac3.sma(4648 -- 4650) : warning 215: expression has no effect
../uploaded/4c1be09fd9ac3.sma(4650) : error 054: unmatched closing brace
../uploaded/4c1be09fd9ac3.sma(4651) : error 010: invalid function or declaration
../uploaded/4c1be09fd9ac3.sma(4654) : error 021: symbol already defined: "select_class"
../uploaded/4c1be09fd9ac3.sma(8301) : warning 203: symbol is never used: "i"
../uploaded/4c1be09fd9ac3.sma(8301) : warning 203: symbol is never used: "id"
../uploaded/4c1be09fd9ac3.sma(8301) : warning 203: symbol is never used: "lx"
15 Errors.
Could not locate output file ../compiled/4c1be09fd9ac3.amx (compile failed).
sma : http://www.speedysha...ablofullmax.txt
Użytkownik czarasd edytował ten post 18.06.2010 20:22
G[o]Q
19.06.2010
klamry pozatym masz dzialajace sma w zalaczniku poradnik dobry bo sprawdzalem
G[o]Q
19.06.2010
czarasd 19.06.2010
Goku nowe klasy dzialaja ale jak je wybiore to pisze : none i lvl:1 \, exp nie leci...Na wszystkich tak jest klasach ?
G[o]Q
19.06.2010
res tabeli
19 czerwiec 2010 - 15:57:
zamien na
19 czerwiec 2010 - 15:57:
new Race[][] = { "None","Mag","Mnich","Paladyn","Zabojca","Nekromanta","Barbarzynca", "Ninja", "Lowca" } enum { NONE = 0, Mag, Mnich, Paladyn, Zabojca, Nekromanta, Barbarzynca, Ninja, Hunter} new race_heal[] = { 100,95,150,130,100,90,110,170,120 }
zamien na
new Race[][] = { "None","Mag","Mnich","Paladyn","Zabojca","Nekromanta","Barbarzynca", "Ninja", "Lowca","bot" } enum { NONE = 0, Mag, Mnich, Paladyn, Zabojca, Nekromanta, Barbarzynca, Ninja, Hunter,Bot} new race_heal[] = { 100,95,150,130,100,90,110,170,120 ,150}
czarasd 19.06.2010
zmienilem i nic...logi:
L 06/19/2010 - 15:57:31: [AMXX] Displaying debug trace (plugin "diablobygoku.amxx")
L 06/19/2010 - 15:57:31: [AMXX] Run time error 4: index out of bounds
L 06/19/2010 - 15:57:31: [AMXX] [0] 4c1be4c22a753.sma::write_hud (line 2083)
L 06/19/2010 - 15:57:31: [AMXX] [1] 4c1be4c22a753.sma::UpdateHUD (line 2105)
Użytkownik czarasd edytował ten post 19.06.2010 15:00
L 06/19/2010 - 15:57:31: [AMXX] Displaying debug trace (plugin "diablobygoku.amxx")
L 06/19/2010 - 15:57:31: [AMXX] Run time error 4: index out of bounds
L 06/19/2010 - 15:57:31: [AMXX] [0] 4c1be4c22a753.sma::write_hud (line 2083)
L 06/19/2010 - 15:57:31: [AMXX] [1] 4c1be4c22a753.sma::UpdateHUD (line 2105)
Użytkownik czarasd edytował ten post 19.06.2010 15:00
G[o]Q
19.06.2010
brakuje ci w tych funkcjach warunku if(is_user_alive(id) ) ale to nie wina mojego skryptu raczej bo tam nic nie bylo zmieniane
czarasd 19.06.2010
Byc moze pomyslisz ze jestem ostatnim nobem ale dopiero bawie sie w te klocki...gdzie dokladnie to wkleic ?
czarasd 19.06.2010
Goku wstaw jak mozesz:
Użytkownik czarasd edytował ten post 19.06.2010 19:41
Załączone pliki
Użytkownik czarasd edytował ten post 19.06.2010 19:41
Vertricus
20.06.2010
new menuname[128]
format(menuname,127,"Wybierz Klase:")
create_class = menu_create(menuname, "handle_create_class")
->
create_class = menu_create("Wybierz klase:", "handle_create_class")
Ps. nie musi być to zmienna globalna jak i tak za każdym razem tworzysz menu
Odnośnie reszty korzystam z tego rozwiązania już jakieś 4miechy i radziłbym sprawdzić
to:
if(item>6) strona++
player_class[id]=item+(6*strona)+1
Ps2. Poczytaj o łączeniu enum'a z tablicami, pętlami.
Ps3.
if(item>6) strona++jak już korzystamy z tego i myślimy że działa to co jak strona = 3?
Ale ogólnie gites
G[o]Q
20.06.2010
new menuname[128]
format(menuname,127,"Wybierz Klase:")
create_class = menu_create(menuname, "handle_create_class")
->create_class = menu_create("Wybierz klase:", "handle_create_class")
Ps. nie musi być to zmienna globalna jak i tak za każdym razem tworzysz menu
Odnośnie reszty korzystam z tego rozwiązania już jakieś 4miechy i radziłbym sprawdzić
to:if(item>6) strona++
player_class[id]=item+(6*strona)+1
Ps2. Poczytaj o łączeniu enum'a z tablicami, pętlami.
Ps3.if(item>6) strona++jak już korzystamy z tego i myślimy że działa to co jak strona = 3?
Ale ogólnie gites
Poprawilem ale nie wiem o co ci chodzi z tym enum'em
Vertricus
20.06.2010
np.
enum _:Klasy
{
aa,
bb,
cc
}
new Race[Klasy][] = {"", "", ""};
new race_health[Klasy] = { 10, 5, 6 };
for (new i=0; i<Klasy; i++)
{
}
enum _:Klasy
{
aa,
bb,
cc
}
new Race[Klasy][] = {"", "", ""};
new race_health[Klasy] = { 10, 5, 6 };
for (new i=0; i<Klasy; i++)
{
}
G[o]Q
20.06.2010
aa o to ci chodzi nie chcialem juz zmieniac tego enuma na "nie animowany" zreszta tak tez jest dobrze bo race_heal ma tyle samo elementow co enum