Potrzebna pomoc
Aktualny czas: 28-04-26, 20:58 Witaj! Przejdź do zakładki Logowanie lub Rejestracja


Wątek zamknięty 
[VX] Potrzebna pomoc
Laura Offline
*


Liczba postów: 59
Dołączył: 02-05-13

Pomógł: 0



Post: #1
Potrzebna pomoc

Witam wszystkich
Mój 1 problem to czy można zrobić tak by w tym skrypcie
#==============================================================
# [VX] Nowe znaczniki tekstu + Automatyczne kolorowanie tekstu
#--------------------------------------------------------------
# by Ayene [yurika@o2.pl]
# Zapraszam na www.ultimateam.pl
#--------------------------------------------------------------
# ** ZASTOSOWANIE
#--------------------------------------------------------------
# Wykaz wszystkich znaczników:
# \C[numer] - zmienia kolor tekstu (numer - 0~31)
# \G - wyświetla nowe okno z ilością złota
# \. - czeka 1/4 sekundy
# \| - czeka 1 sekundę
# \! - czeka do momentu wciśnięcia przycisku
# \> - włącza szybsze wyświetlanie znaków
# \< - wyłącza szybsze wyświetlanie znaków
# \^ - samoczynnie zamyka okno
# \V[id] - wyświetla wartość zmiennej o podanym ID
# \N - imię bohatera o podanym ID
# \UM[ID]  - nazwa umiejętności o podanym ID
# \PRZ[ID] - nazwa przedmiotu o podanym ID
# \W[ID] - nazwa broni o podanym ID
# \ZB[ID] - nazwa zbroji o podanym ID
# \POT[ID] - nazwa potwora o podanym ID
# \GP[ID] - nazwa grupy potworów o podanym ID
# \CENA[ID] - cena przedmiotu o podanym ID    
# \KL[ID] - klasa bohatera o podanym ID
# \MAPA - nazwa mapy na której aktualnie znajduje się postać
# \I - włącza i wyłącza kursywę
# \B - włącza i wyłącza pogrubienie
#==============================================================
# Konfiguracja kolorów znajduje się poniżej
#==============================================================
class Window_Message < Window_Selectable
  def convert_special_characters
  
    # standardowe
    @text.gsub!(/\\C\[([0-9]+)\]/i) { "\x01[#{$1}]" }
    @text.gsub!(/\\G/)              { "\x02" }
    @text.gsub!(/\\\./)             { "\x03" }
    @text.gsub!(/\\\|/)             { "\x04" }
    @text.gsub!(/\\!/)              { "\x05" }
    @text.gsub!(/\\>/)              { "\x06" }
    @text.gsub!(/\\</)              { "\x07" }
    @text.gsub!(/\\\^/)             { "\x08" }  
    @text.gsub!(/\\\\/)             { "\\" }
    @text.gsub!(/\\V\[([0-9]+)\]/i) { $game_variables[$1.to_i] }
  
    # \I - włącza i wyłącza kursywę
    @text.gsub!(/\\I/i)              { "\x09" }
  
    # \B - włącza i wyłącza pogrubienie
    @text.gsub!(/\\B/i)              { "\x10" }  

    # By zmienić kolor wyświetlanych nazw, wystarczy podmienić 29 na inną liczbę
    # Liczba określa numer koloru - 0~31
    # Wykaz wszystkich kolorów można zobaczyć tutaj:
    # http://www.ultimateam.pl/viewtopic.php?t=1981

    # \N - imię bohatera o podanym ID
    @text.gsub!(/\\N\[([0-9]+)\]/i) { "\x01[29]" + $game_actors[$1.to_i].name + "\x01[0]" }  
  
    # \MAPA - nazwa mapy na której aktualnie znajduje się postać
    @text.gsub!(/\\MAPA/i)           { "\x01[29]#{$game_map.map_name}\x01[0]" }  
  
    # \UM[ID]  - nazwa umiejętności o podanym ID
    @text.gsub!(/\\UM\[([0-9]+)\]/i) { "\x01[29]" + $data_skills[$1.to_i].name + "\x01[0]" }
  
    # \PRZ[ID] - nazwa przedmiotu o podanym ID
    @text.gsub!(/\\PRZ\[([0-9]+)\]/i){ "\x01[29]" + $data_items[$1.to_i].name + "\x01[0]" }
  
    # \W[ID] - nazwa broni o podanym ID
    @text.gsub!(/\\W\[([0-9]+)\]/i) { "\x01[29]" + $data_weapons[$1.to_i].name + "\x01[0]" }
  
    # \ZB[ID] - nazwa zbroi o podanym ID
    @text.gsub!(/\\ZB\[([0-9]+)\]/i) { "\x01[29]" + $data_armors[$1.to_i].name + "\x01[0]" }

    # \POT[ID] - nazwa potwora o podanym ID    
    @text.gsub!(/\\POT\[([0-9]+)\]/i){ "\x01[29]" + $data_enemies[$1.to_i].name + "\x01[0]" }
  
    # \GP[ID] - nazwa grupy potworów o podanym ID
    @text.gsub!(/\\GP\[([0-9]+)\]/i) { "\x01[29]" + $data_troops[$1.to_i].name + "\x01[0]" }
  
    # \CENA[ID] - cena przedmiotu o podanym ID    
    @text.gsub!(/\\CENA\[([0-9]+)\]/i) { "\x01[29]" + $data_items[$1.to_i].price.to_s + "\x01[0]" }
  
    # \KL[ID] - klasa bohatera o podanym ID
    @text.gsub!(/\\KL\[([0-9]+)\]/i) { "\x01[29]" + $data_classes[$game_actors[$1.to_i].class_id].name + "\x01[0]" }
    
    # A to niewielki dodatek, dla tych którzy często muszą powielać ten sam tekst
    # np. stworzyłam sobie znacznik \Ayene, który wpisany w oknie wiadomości
    # wyświetli nick 'Ayene' w kolorze czerwonym.
    # [Aa] sprawia, że zadeklarowana została różna wielkość pierwszej literki,
    # czyli innymi słowy nie ma różnicy między \Ayene a \ayene
    @text.gsub!(/\\[Aa]yene/) { "\x01[2]Ayene\x01[0]" }
  
    end

  def update_message
    loop do
      c = @text.slice!(/./m)          
      case c
      when nil                        
        finish_message                
        break
      when "\x00"                      
        new_line
        if @line_count >= MAX_LINE    
          unless @text.empty?          
            self.pause = true          
            break
          end
        end
      when "\x01"                      
        @text.sub!(/\[([0-9]+)\]/, "")
        contents.font.color = text_color($1.to_i)  
        next
      when "\x02"                      
        @gold_window.refresh
        @gold_window.open
      when "\x03"                      
        @wait_count = 15
        break
      when "\x04"                      
        @wait_count = 60
        break
      when "\x05"                      
        self.pause = true
        break
      when "\x06"                    
        @line_show_fast = true
      when "\x07"                    
        @line_show_fast = false
      when "\x08"                    
        @pause_skip = true
      when "\x09"                    
        contents.font.italic = contents.font.italic == true ? false : true
        next
      when "\x10"
        contents.font.bold = contents.font.bold == true ? false : true
        next          
      else                            
        contents.draw_text(@contents_x, @contents_y, 40, WLH, c)
        c_width = contents.text_size(c).width
        @contents_x += c_width
      end
      break unless @show_fast or @line_show_fast
    end
  end
end

class Game_Map
  def map_name
    mpname = load_data("Data/MapInfos.rvdata")
    mpname[@map_id].name
  end
end

można było wyświetlać też imiona innych ludzi nie bohaterów w grze? jeśli tak to proszę o pomoc jeśli nie to proszę kogoś o taki skrypt.

mój 2 problem to jak zrobić by 21 brązowych to 1 srebrna, a 17 srebrnych to 1 złota moneta w tym skrypcie:

#=============================================
# ** Oni Monetary System
#---------------------------------------------
# Developed by Onidsouza
# Do not redestribute without permission
# Remember: MAX_GOLD always is 999.999
# Do not make a item that costs more than that
#==============================================

module OnidsouzaGold

  #  OPTIONAL 

  #If not using icons
  GOLD = "Z"
  SILVER = "S"
  BRONZE = "B"

  USE_ICON = true

  #If using icons, icon ID
  GOLD_ICON = 102
  SILVER_ICON = 98
  BRONZE_ICON = 97

end

class Game_Party < Game_Unit

  alias onidsouzagoldinit initialize

  def initialize
    onidsouzagoldinit
    @gold = [0, 0, 0]
  end

  def gold_array
    return @gold
  end

  def gold
    return total_gold
  end

  def gain_gold(n)
    @gold[2] += n
    update_gold
  end

  def lose_gold(n)
    gain_gold(-n)
  end

  def total_gold
    return (@gold[2] + (@gold[1]*100) + (@gold[0]*1000000))
  end

  def gold_to_silver
    return (@gold[2]/100) + (@gold[1]) + (@gold[0]*100)
  end

  def gold_to_gold
    return @gold[0] + (@gold[1]/100) + (@gold[2]/100000)
  end

  def update_gold
      times = @gold[2] / 100
      @gold[2] -= times * 100
      @gold[1] += times
      times = @gold[1] / 100
      @gold[1] -= times * 100
      @gold[0] += times
      if @gold[0] > 99
        @gold[0] = @gold[1] = @gold[2] = 99
      end
  end
  
  def make_gold_text
    return to_monetary_system(total_gold)
  end
  
end

class Window_Base < Window

  def draw_currency_value(value, x, y, width, gold = true)
    if not OnidsouzaGold::USE_ICON
      self.contents.font.color = normal_color
      self.contents.draw_text(x, y, width, WLH, to_monetary_system(value), 2)
    elsif OnidsouzaGold::USE_ICON and gold
      self.contents.font.color = normal_color
      xx = 20
      draw_icon(OnidsouzaGold::GOLD_ICON, x, y)
      self.contents.draw_text(x + 20, y, xx, WLH, $game_party.gold_array[0])
      x += 40
      draw_icon(OnidsouzaGold::SILVER_ICON, x, y)
      self.contents.draw_text(x + 20, y, xx, WLH, $game_party.gold_array[1])
      x += 40
      draw_icon(OnidsouzaGold::BRONZE_ICON, x, y)
      self.contents.draw_text(x + 20, y, xx, WLH, $game_party.gold_array[2])
    else
      arr = to_monetary_array(value)
      self.contents.font.color = normal_color
      xx = 20
      draw_icon(OnidsouzaGold::GOLD_ICON, x, y)
      self.contents.draw_text(x + 20, y, xx, WLH, arr[0])
      x += 40
      draw_icon(OnidsouzaGold::SILVER_ICON, x, y)
      self.contents.draw_text(x + 20, y, xx, WLH, arr[1])
      x += 40
      draw_icon(OnidsouzaGold::BRONZE_ICON, x, y)
      self.contents.draw_text(x + 20, y, xx, WLH, arr[2])
    end
  end

end


class Window_ShopBuy < Window_Selectable

  def draw_item(index)
    item = @data[index]
    number = $game_party.item_number(item)
    enabled = (item.price <= $game_party.total_gold and number < 99)
    rect = item_rect(index)
    self.contents.clear_rect(rect)
    if item != nil
      draw_icon(item.icon_index, rect.x, rect.y, enabled)
      self.contents.font.color = normal_color
      self.contents.font.color.alpha = enabled ? 255 : 128
      wid = contents.text_size(item.name).width
      self.contents.draw_text(rect.x + 24, rect.y, wid, WLH, item.name)
    end
    #rect.width -= 4
    price = to_monetary_system(item.price)
    self.contents.draw_text(rect.x + 24 + wid, rect.y, rect.width - 24 - wid, WLH, price, 2)
    #  NEW
    #self.contents.draw_text(rect.x + 30, rect.y, rect.width - rect.x - 30, WLH, to_monetary_system(item.price), 2)
    #draw_currency_value(item.price, rect.x + rect.width + 8, rect.y, rect.width, false, )
  end

end

def to_monetary_system(integ)
  data = [0, 0, 0]
  data[2] = integ
  times = data[2] / 100
  data[2] -= times * 100
  data[1] += times
  times = data[1] / 100
  data[1] -= times * 100
  data[0] += times
  return "#{data[0]} #{OnidsouzaGold::GOLD} - #{data[1]} #{OnidsouzaGold::SILVER} - #{data[2]} #{OnidsouzaGold::BRONZE}"
end

def to_monetary_array(integ)
  data = [0, 0, 0]
  data[2] = integ
  times = data[2] / 100
  data[2] -= times * 100
  data[1] += times
  times = data[1] / 100
  data[1] -= times * 100
  data[0] += times
  return data
end

Bardzo proszę o pomoc i z góry za nią dziękuje.

undefined
05-12-13 14:26
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
NieGramWLola Offline
*


Liczba postów: 3
Dołączył: 01-12-13

Pomógł: 0



Post: #2
RE: Potrzebna pomoc

nie napisałaś czego chcesz
05-12-13 18:38
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Laura Offline
*


Liczba postów: 59
Dołączył: 02-05-13

Pomógł: 0



Post: #3
RE: Potrzebna pomoc

Jak nie jak tak
w 1. chcę by pokazano mi jak wyświetlać kolorowe nazwy npc nie bohaterów (lub inny skrypt jak tym się nie da)
a w 2. chce wiedzieć gdzie i jak ustawić by 21 brązowych monet to 1 srebrna, a 17 srebrnych to 1 złota
Czytaj ze zrozumieniem zanim się wypowiesz

undefined
05-12-13 20:40
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
NieGramWLola Offline
*


Liczba postów: 3
Dołączył: 01-12-13

Pomógł: 0



Post: #4
RE: Potrzebna pomoc

Laura napisał(a):Jak nie jak tak
w 1. chcę by pokazano mi jak wyświetlać kolorowe nazwy npc nie bohaterów (lub inny skrypt jak tym się nie da)
a w 2. chce wiedzieć gdzie i jak ustawić by 21 brązowych monet to 1 srebrna, a 17 srebrnych to 1 złota
Czytaj ze zrozumieniem zanim się wypowiesz

coś mi się widocznie na telefonie nie wyświetliło
(Ten post był ostatnio modyfikowany: 05-12-13 21:20 przez NieGramWLola.)
05-12-13 21:19
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Ayene Offline
*


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

Pomógł: 112



Post: #5
RE: Potrzebna pomoc

Ad 1. A gdzie chcesz zadeklarować te nazwy npc? Przyjrzałaś się fragmentowi:
# A to niewielki dodatek, dla tych którzy często muszą powielać ten sam tekst
    # np. stworzyłam sobie znacznik \Ayene, który wpisany w oknie wiadomości
    # wyświetli nick 'Ayene' w kolorze czerwonym.
    # [Aa] sprawia, że zadeklarowana została różna wielkość pierwszej literki,
    # czyli innymi słowy nie ma różnicy między \Ayene a \ayene
    @text.gsub!(/\\[Aa]yene/) { "\x01[2]Ayene\x01[0]" }

[Obrazek: aye_furniture_pres.png]
05-12-13 21:28
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Laura Offline
*


Liczba postów: 59
Dołączył: 02-05-13

Pomógł: 0



Post: #6
RE: Potrzebna pomoc

tak. Chce je w wiadomości ale jak biorę np. \Maria to wyświetla mi się na biało i "\" też mi się wyświetla

undefined
05-12-13 21:37
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Avara Offline
*


Liczba postów: 109
Dołączył: 16-05-13

Pomógł: 0



Post: #7
RE: Potrzebna pomoc

Laura chyba chce, by wpisując np. "\npc[29]", wyświetlało nazwę zdarzenia, w którym ta wiadomość została wstawiona w kolorze (np.) 29.

My Fantasy Online 3 - gra przeglądarkowa RPG w Maker'owych klimatach
[Obrazek: 35187.png]
Spoiler: (Otwórz)
(Ten post był ostatnio modyfikowany: 05-12-13 21:44 przez Avara.)
05-12-13 21:43
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Ayene Offline
*


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

Pomógł: 112



Post: #8
RE: Potrzebna pomoc

A jak zadeklarowałaś \Maria w skrypcie?

[Obrazek: aye_furniture_pres.png]
05-12-13 21:44
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Laura Offline
*


Liczba postów: 59
Dołączył: 02-05-13

Pomógł: 0



Post: #9
RE: Potrzebna pomoc

Nie a jak ją zadeklarować znaczy się w którym miejscu

undefined
05-12-13 21:48
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
kanumerki Offline
*


Liczba postów: 247
Dołączył: 02-05-13

Pomógł: 45



Post: #10
RE: Potrzebna pomoc

Co do drugiego problemu to przerobiłem skrypt według uznania.
21 brązowych to 1 srebrna,17 srebrnych to 1 złota.
Skrypt:
Spoiler: (Otwórz)
Sprawdzałem czy się zgadza i u mnie działa bez zarzutów. Wszystko działa w jedną stronę (zdobywania pieniędzy i przerabiania na monetę o wyższej wartości) jak i też w drugą (czyli wydawanie pieniędzy :C).

Stary nick:ka0909
Pomagam w przerabianiu lekkich skryptów smiles
05-12-13 21:56
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.