Zamknięty przez: Ayene Czw 23 Cze, 2011 21:13 |
Skrypt na zapis i Map Slide |
Autor |
Wiadomość |
bartek2940
Preferowany:
Pomógł: 1 raz Dołączył: 10 Kwi 2010 Posty: 88
|
Wysłany: Wto 21 Cze, 2011 22:11
|
|
Skrypt na zapis i Map Slide
|
Witajcie to znowu ja i tak, znowu mam problem ze skryptem i wyświetlaną nazwą lokacji
Chodzi o to, że używam MapSlide i Systemu zapisu i wczytania.
MapSlide potrzebuje po nazwie lokacji informacji o położeniu mapy w przestrzeni (wiecie [MET 0 0 0 0] itp.).
Ale przy zapisanej grze jest nazwa lokacji a po niej właśnie ten [Met 0 0 0 0].
Proszę o usunięcie Met-u z nazwy lokacji po zapisie (żeby się nie wyświetlał).
Podobnie jak prosiłem W tym temacie.
Z góry dziękuję za pomoc.
Czyli zrobić z tego:
To:
|
________________________ Obecny projekt - Chwilowo brak |
|
|
|
Ayene
Ranga RM:
Pomogła: 232 razy Dołączyła: 18 Wrz 2007 Posty: 2424
|
Wysłany: Sro 22 Cze, 2011 08:48
|
|
|
A próbowałeś skonfigurować w skrypcie 'Zapisu' to:
Kod: | MAP_NAME_TEXT_SUB = %w{}
# Text that you want to remove from map name,
# e.g. %w{[LN] [DA]} will remove text '[LN]' and '[DA]' from map name |
|
________________________
|
|
|
|
bartek2940
Preferowany:
Pomógł: 1 raz Dołączył: 10 Kwi 2010 Posty: 88
|
Wysłany: Sro 22 Cze, 2011 21:52
|
|
|
Dzięki, próbowałem ale chodzi o to, aby nie pokazywało Met-a niezależnie od wartości (nieważne, czy będzie [Met 0 0 0 0], czy [Met 1 2 10 99]), a z tym mam problemy.
Chyba dałem sobie radę wpisałem tak:
Kod: | MAP_NAME_TEXT_SUB = %w{[Met ] 0 0 0 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20} |
i narazie działa (założenie jest takie, że z jednej mapy nie można przejść w dwóch miejscach na tą samą, czyli nie będzie w "Mecie" dwa razy tej samej wartości innej niż zero.
Np.:
Dobrze:
[Met 0 0 0 0]
[Met 0 1 2 3]
Źle:
[Met 1 2 3 3]) |
________________________ Obecny projekt - Chwilowo brak |
|
|
|
Ayene
Ranga RM:
Pomogła: 232 razy Dołączyła: 18 Wrz 2007 Posty: 2424
|
Wysłany: Sro 22 Cze, 2011 22:17
|
|
|
Znajdź w skrypcie 'Neo Save System III' linijkę:
Kod: | MAP_NAME_TEXT_SUB.each_index do |i|
@map_name[map_id].sub!(MAP_NAME_TEXT_SUB[i], '')
end |
zamień ją na:
Kod: | if @map_name[map_id].include?("MET")
@map_name[map_id].scan(/\[MET (\d+) (\d+) (\d+) (\d+)\]/i)
['MET ','[', ']', $1, $2, $3, $4].each {|i| @map_name[map_id].gsub!(i) {''} }
end |
|
________________________
|
|
|
|
bartek2940
Preferowany:
Pomógł: 1 raz Dołączył: 10 Kwi 2010 Posty: 88
|
Wysłany: Czw 23 Cze, 2011 17:31
|
|
|
Ayene, jesteś super!
Jak zwykle miałaś rację.
Dla potrzeb własnych zmieniłem "MET" na "Met" (bo tak zapisuje mapy). |
________________________ Obecny projekt - Chwilowo brak |
|
|
|
|