VX ace - zmiana wybranych klocków tileseta ?
Wystąpiły następujące problemy:
Warning [2] Cannot modify header information - headers already sent by (output started at /home/ayene/public_html/forum/inc/languages/polish/global.lang.php:1) - Line: 411 - File: inc/plugins/google_seo/redirect.php PHP 5.6.40 (Linux)
File Line Function
[PHP]   errorHandler->error
/inc/plugins/google_seo/redirect.php 411 header
/inc/plugins/google_seo/redirect.php 399 google_seo_redirect_header
/inc/class_plugins.php 101 google_seo_redirect_hook
/global.php 101 pluginSystem->run_hooks
/showthread.php 22 require_once
Warning [2] Cannot modify header information - headers already sent by (output started at /home/ayene/public_html/forum/inc/languages/polish/global.lang.php:1) - Line: 1710 - File: inc/functions.php PHP 5.6.40 (Linux)
File Line Function
[PHP]   errorHandler->error
/inc/functions.php 1710 header
/inc/functions.php 1772 my_setcookie
/inc/functions_indicators.php 42 my_set_array_cookie
/showthread.php 578 mark_thread_read



Aktualny czas: 18-04-24, 03:03 Witaj! Przejdź do zakładki Logowanie lub Rejestracja


Wątek zamknięty 
[VXAce] VX ace - zmiana wybranych klocków tileseta ?
X-Tech Offline


Liczba postów: 876
Dołączył: 03-05-13

Pomógł: 23



Post: #1
VX ace - zmiana wybranych klocków tileseta ?

Istnieje skrypt, który zmieni wybrany klocek tileseta w danym miejscu na mapie na inny w czasie gry ?
(Ten post był ostatnio modyfikowany: 17-07-14 22:38 przez X-Tech.)
17-07-14 22:30
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Angius Offline
*


Liczba postów: 48
Dołączył: 30-04-13

Pomógł: 6



Post: #2
RE: VX ace - zmiana wybranych klocków tileseta ?

Jeśli to tylko pojedynczy klocek w jednym tylko miejscu, to myślę, że spokojnie da radę na zdarzeniach. Jeśli chcesz jednak trawę w całej grze zmienić na fioletowe błoto, to znalazłem taki tutorial:
http://forums.rpgmakerweb.com/index.php?...-swapping/
Do tego skryptu:
http://www.himeworks.com/2013/02/17/tile-swap/
(Ten post był ostatnio modyfikowany: 17-07-14 23:01 przez Angius.)
17-07-14 23:00
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
X-Tech Offline


Liczba postów: 876
Dołączył: 03-05-13

Pomógł: 23



Post: #3
RE: VX ace - zmiana wybranych klocków tileseta ?

Chodzi o to abym mógł zrobić bomby, którymi mógłbym wysadzać (zmieniać klocki o określonym id i położeniu na inne - np mury - na puste pola) Wiem, że mogę na eventach, ale ich liczba będzie mocno ograniczona.
(Ten post był ostatnio modyfikowany: 17-07-14 23:12 przez X-Tech.)
17-07-14 23:07
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Angius Offline
*


Liczba postów: 48
Dołączył: 30-04-13

Pomógł: 6



Post: #4
RE: VX ace - zmiana wybranych klocków tileseta ?

Wobec tego ten tutorial powinien ci pomóc. Jeśli nie, to widziałem też gdzieś skrypt, który dodawał właśnie bomby i możliwe do zniszczenia tile, tylko za Chiny nie pamiętam jak się zwał...
17-07-14 23:42
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Mateusz SSJ8 Offline
*


Liczba postów: 510
Dołączył: 10-05-13

Pomógł: 40



Post: #5
RE: VX ace - zmiana wybranych klocków tileseta ?

Każdy klocek ma następujący kod, którym jest ustawiany w RPG Makerze:
map.data[x, y, z] = tile_id
I to dla określonej mapy. O ilez postaciami da się tak zrobić, to z mapami muszę jeszcze sprawdzić.

Nienawidzony i nienawidzący. Przez nienawiść tego drugiego obaj będą martwi.
18-07-14 08:32
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Ayene Offline
*


Liczba postów: 758
Dołączył: 09-04-13

Pomógł: 112



Post: #6
RE: VX ace - zmiana wybranych klocków tileseta ?

Możesz spróbować tego:
# by Ayene
class Game_Interpreter
  # X, Y: współrzędne x i y elementu na mapie
  # Layer: 0: autotile podłogi + A5, 1: autotile dziur itd., 2: tile B~E
  # Set: 0: A5, 1: B, 2: C, 3: D, 4: E
  # Col: 1~8
  # Row: dla tile A5: 1~16, dla tile B~E: 1~32
  def change_tile(x, y, layer, set, row, col)
    case set
    when 0
      new_i = 1536 + ((col-1) + ((row-1) * 8))
    when 1..4    
       new_i = (256 * (set-1)) + ((col-1) + (8 * (row-1)))
     else
       new_i = 1
    end
    $game_map.data[x, y, layer] = new_i
    $game_map.need_refresh = true
  end
end

Aby użyć, wystarczy za pomocą komendy Script wpisać:
change_tile(x, y, layer, set, row, col)
gdzie:
X, Y: współrzędne x i y elementu na mapie
Layer: 0: autotile podłogi + A5, 1: autotile dziur itd., 2: tile B~E
Set: 0: A5, 1: B, 2: C, 3: D, 4: E
Col: 1~8
Row: dla tile A5: 1~16, dla tile B~E: 1~32

Czyli, jeśli chcesz podmienić murek na pozycji [4,5] na podłogę z tile A5, wpisz w zdarzeniu np:
change_tile(4, 5, 0, 0, 3, 1)

[Obrazek: aye_furniture_pres.png]
18-07-14 11:22
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
X-Tech Offline


Liczba postów: 876
Dołączył: 03-05-13

Pomógł: 23



Post: #7
RE: VX ace - zmiana wybranych klocków tileseta ?

Ludzie dzieki.

Ayene to jeszcze lepsze, bo można niszczyć wyższe segmenty. Za każdym razem dobre będzie zmienić wszystko od a-o do a5.


Na pewno da się zrobić szablony zapisu zmian na oryginalnych mapach w formie tablic zawierających to co napisałaś (change_tile(4,5,0,0,3,1), aby je wczytywać. Ogarnę to.

Jestem wściekły na siebie, że nie rozumiem Ruby bez helpa od razu.. Siedzę w tym od wczoraj , ale na szczęście z kontekstu czytając kolejne skrypty uczę się tego języka (trochę) choć nie jest to konieczne, ale chcę wszystko rozumieć. Nie wytrzymałbym z helpem. Tak jest ciekawiej.

Poza tym....Rpgmaker VX Ace... po prostu mistrzostwo świata. Opcje w tym programie pozwalają zrobić dosłownie wszystko - naginając jego zasady co pozwala tworzyć w tym gry w każdym gatunku...;O
(Ten post był ostatnio modyfikowany: 18-07-14 17:03 przez X-Tech.)
18-07-14 16:52
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Wątek zamknięty 


Skocz do:


Użytkownicy przeglądający ten wątek: 1 gości

Kontakt | Ultima Forum | Wróć do góry | Wróć do forów | Wersja bez grafiki | RSS
Powered By MyBB. © 2013 MyBB Group. All Rights Reserved.
Skórka by Ayene.