Witaj Wesnothańczyku
Zobacz temat
 Drukuj temat
WML- pytania i odpowiedzi
Smok
Ewentualnie wrzuć swój dodatek na forum, może ktoś znajdzie, gdzie jest błąd.
 
kasim
Mam kolejne pytanie chcę zrobić jednostkę mogącą rekrutować poza zamkiem inną jednostkę ( trochę jak przywoływacze z ery magii) samo tworzenie jednostki i branie pieniążków działa, ale nie działa poniższy kod mający zabrać rekrutującej jednostce wszystkie punkty ruchu. Jak próbowałem innych sposobów zamiast {VARIABLE born_queen.moves[$a] 0} to albo po prostu nie działało, albo wyskakiwało że stored unit jest pusty. Jakby co wszystko jest w set_menu_item na polu sąsiadującym do jednostki której chcę zabrać punkty ruchu( i wcześniej sprawdzałem czy je ma i to działało). Proszę o pomoc.
Pobierz kod źródłowy  Kod źródłowy
[store_unit]
   [filter]
      type=DEM_krolowa_szkirnow
      side=$side_number
      [filter_wml]
         moves=$this_unit.max_moves
      [/filter_wml]
      [filter_adjacent]
         x,y=$x1,$y1
      [/filter_adjacent]
   [/filter]
   variable=born_queen
[/store_unit]
{VARIABLE born_queen.moves[$a] 0}
[unstore_unit]
   variable=born_queen
[/unstore_unit]
{CLEAR_VARIABLE born_queen}


 
Piko
Nie do końca zrozumiałe jest dla mnie użycie tego [$a]. Po pierwsze: co zawiera ta zmienna? Nie widzę jej nigdzie zdefiniowanej.

Zakładając że niezdefiniowane zmienne przyjmują wartość 0 (nie jestem pewien czy w tym przypadku to tak działa), możesz użyć {VARIABLE born_queen[$a].moves 0}, aby zmienić wartość ruchu pierwszej jednostki pasującej do filtra (ja sugeruję użyć {VARIABLE born_queen[0].moves 0}, aby mieć pewność).
Użycie nawiasu kwadratowego w zaprezentowany sposób nie ma w tym przypadku sensu, bo zmienna "moves" jest skalarem. Można natomiast w ten sposób modyfikować ataki, przykładowo:
Pobierz kod źródłowy  Kod źródłowy

{VARIABLE born_queen[0].attacks[0].range melee}
{VARIABLE born_queen[0].attacks[1].range ranged}





Jeżeli chcemy zmienić wartości poszczególnych opcji ataku.


Mam nadzieję że pomogłem.
 
Smok
Pobierz kod źródłowy  Kod źródłowy
{VARIABLE born_queen.moves 0}
{VARIABLE born_queen.attacks_left 0}


 
Przejdź do forum:
Wygenerowano w sekund: 0.08
10,819,852 unikalne wizyty