UltimaForum

Skrypty [XP] - Nazwy zdarzeń na mapie [XP]

Ayene - Sob 30 Sty, 2010 21:17
Temat postu: Nazwy zdarzeń na mapie [XP]
~ Nazwy zdarzeń na mapie [XP] ~

Krótki opis
Skrypt wyświetla nazwy nad zdarzeniami (patrz screen). Jest to przerobiona pod XP wersja skryptu Woratany z VX - TUTAJ

Autor skryptu
Woratana [woratana@hotmail.com]

Tłumaczenie i poprawki
Ayene [yurika@o2.pl]

Kompatybilność
Tylko XP

Skrypt
Spoiler:

Kod:

#===============================================================
# [XP] Unoszące się nazwy zdarzeń
# Skrypt wyświetla na mapie nazwy zdarzeń.
# Skrypt przerobiony z wersji VX na XP by Ayene
#--------------------------------------------------------------
# Autor VX: Woratana [woratana@hotmail.com]
# Tłumaczenie i poprawki: Ayene [yurika@o2.pl]
#--------------------------------------------------------------
# Umieść skrypt nad Main
#=================================================================
module Ayene   
  KOLOR_CZCIONKI = Color.new(0,0,127, 255)  # Kolor RGB i przezroczystość 0~255
  ROZMIAR_CZCIONKI = 16                     # Rozmiar czcionki
  NAZWA_CZCIONKI = "Arial"                  # Czcionka (folder Fonts)
  KURSYWA = false                           # Kursywa (true / false)
  POGRUBIENIE = false                       # Pogrubienie (true / false)
end

class Sprite_Character < RPG::Sprite
#=================================================================
# POCZĄTEK KONFIGURACJI   
#=================================================================
  FLOAT_NAME_SHOW_ALL = false
  # Czy chcesz, aby wyświetlały się nazwy wszystkich zdarzeń?
  # (true - tak / false - nie)
 
  # Jeżeli wybrano u góry false, nazwę zdarzenia można wyświetlić dopisując [FS]
  # w jego edycji...
  # np. Statek[FS]
  FLOAT_NAME_SHOW_TAG = '[FS]'   
 
  # Jeżeli wybrano u góry true, nazwę zdarzenia można ukryć dopisując [FNS]
  # w jego edycji...
  # np. Statek[FNS]
  FLOAT_NAME_NOT_SHOW_TAG = '[FNS]'
 
  # Tutaj można ukryć słowa, które mają się nie wyświetlać w nazwie zdarzenia
  # np. FLOAT_NAME_NOT_SHOW_WORDS = ['[ny]', '[ss]', 'lol']
  # Wówczas w nazwie zdarzenia nie wyświetlą się słowa [ny], [ss] i lol.
  FLOAT_NAME_NOT_SHOW_WORDS = []
 
  FLOAT_NAME_X_OFFSET = 10 # Przesunięcie nazwy zdarzenia w poziomie (+ / -)
  FLOAT_NAME_Y_OFFSET = 0 # Przesunięcie nazwy zdarzenia w pionie (+ / -)
  FLOAT_NAME_Z = 198 # Przesunięcie nazwy zdarzenia nad (+) lub pod (-) inne zdarzenia.
#=================================================================
# KONIEC KONFIGURACJI
#=================================================================
  alias wora_floatevn_sprcha_dis dispose
  alias wora_floatevn_sprcha_upd update
 
  def dispose
    if !@charname_box.nil? and @charname_box.is_a?(Sprite)
      @charname_box.bitmap.dispose
      @charname_box.dispose
    end
    wora_floatevn_sprcha_dis
  end
 
  def update
    wora_floatevn_sprcha_upd
    if @character.is_a?(Game_Event)
      if @charname_box.nil?
        if (FLOAT_NAME_SHOW_ALL and !@character.event.name.include?(FLOAT_NAME_NOT_SHOW_TAG)) or
        (!FLOAT_NAME_SHOW_ALL and @character.event.name.include?(FLOAT_NAME_SHOW_TAG))
          @float_charname = @character.event.name.dup
          not_show_words = FLOAT_NAME_NOT_SHOW_WORDS.clone.push FLOAT_NAME_SHOW_TAG,
        FLOAT_NAME_NOT_SHOW_TAG
          not_show_words.each {|w| @float_charname.gsub!(w) {''} }         
          @charname_box = Sprite.new         
          @charname_box.z = FLOAT_NAME_Z
          bitmap = Bitmap.new(1,1)
          nsize = bitmap.text_size(@float_charname)
          bitmap.dispose         
          @charname_box.bitmap = Bitmap.new(nsize.width, nsize.height)
          @charname_box.bitmap.font.color = Ayene::KOLOR_CZCIONKI
          @charname_box.bitmap.font.size = Ayene::ROZMIAR_CZCIONKI
          @charname_box.bitmap.font.name = Ayene::NAZWA_CZCIONKI
          @charname_box.bitmap.font.italic = Ayene::KURSYWA
          @charname_box.bitmap.font.bold = Ayene::POGRUBIENIE         
          @charname_box.bitmap.draw_text(0, 0, nsize.width, nsize.height, @float_charname)           
        else
          @charname_box = 0
        end       
      end
      if @charname_box.is_a?(Sprite)
      #  @charname_box.x = self.x  + FLOAT_NAME_X_OFFSET
     #   @charname_box.y = self.y  + FLOAT_NAME_Y_OFFSET
       @charname_box.x = self.x  - (@charname_box.bitmap.width / 2) + FLOAT_NAME_X_OFFSET
      @charname_box.y = self.y - self.oy - @charname_box.bitmap.height + FLOAT_NAME_Y_OFFSET
      end
    end
  end
end

class Game_Event < Game_Character
  attr_reader :event
end


Demo
niepotrzebne

Screenshot
Spoiler:


Instrukcja
1. Wklej skrypt nad "Main" w Edytorze Skryptu.
2. Reszta instrukcji znajduje się w treści skryptu.

Piszcie w razie problemów.

Czeliosss - Pon 01 Lut, 2010 15:25

Skrypt świetny. Na pewno go użyję, ale pokazuje mi błąd w 75 linijce z bitmapą. Nie wiem co grane.
Ayene - Pon 01 Lut, 2010 16:10

Co dokładnie jest napisane? I podaj linijkę 75 u siebie w skrypcie.
Czeliosss - Pon 01 Lut, 2010 16:38

75. @charname_box.bitmap = Bitmap.new(nsize.width, nsize.height)
A pisze: Failed to craete bitmap

Ayene - Pon 01 Lut, 2010 16:40

A w czystym projekcie Tobie działa?
Czeliosss - Pon 01 Lut, 2010 16:46

W czystym to samo.
Ayene - Pon 01 Lut, 2010 17:36

A spróbuj uruchomić u siebie projekt, który dołączyłam do postu. Domyślam się, że masz polskiego 'mejkera' i to chyba on powoduje błąd.
Czeliosss - Pon 01 Lut, 2010 19:10

Bardzo możliwe, że to przez polską wersję, ale nie będe płacił 270 zł za jakiś tam program.
Boniek2000 - Wto 23 Lut, 2010 20:00

Błagam o przerobienie skryptu do polaka!
Ayene - Wto 23 Lut, 2010 22:14

Nie wiem, kto ma Tobie przerobić skrypt 'do polaka' skoro większość osób ma program angielski. Nie będę przecież specjalnie instalować polską wersję. Możesz się zastosować do tego, co napisałam post wyżej, to na razie jedyne wyjście.
RtaMag2 - Pią 05 Mar, 2010 21:31

A mi wpożo włancza się gra itd ale napisów niema -_-
Yoroiookami - Wto 09 Mar, 2010 18:25

Co zrobić, żeby po ustawieniu przezroczystości bohatera na 0, napis także znikał? o_o
Ayene - Sro 10 Mar, 2010 13:48

Adekwatnie do wersji VX :arrow: http://www.ultimateam.pl/...p?p=18013#18013
Jest przy tym trochę pracy.

Yoroiookami - Sro 10 Mar, 2010 17:16

O f*ck..wygląda na skomplikowane. XD
Tak czy inaczej dzięki za pomoc, pospamuję jeszcze w tamtym wątku.

krychu18 - Sob 27 Mar, 2010 18:32

szkoda tylko , że mi jak usunę zdarzenie to nadal jest nazwa zdarzenia.
da się coś z tym zrobić?

daffid77 - Pon 05 Kwi, 2010 19:06

Nie no ... Mi żaden błąd nie wyskakuję ale nie dziaała nie wiem co grane : :?:
Ayene - Wto 06 Kwi, 2010 12:31

daffid77, a sprawdzałeś demo z tego posta :arrow: http://www.ultimateam.pl/...p?p=19511#19511
daffid77 - Wto 06 Kwi, 2010 16:27

Dzięki Wielki Już wiemteraz Mi wchodzi :D

[ Dodano: Wto 06 Kwi, 2010 16:34 ]
A na Polskiej wersi nie wejdzie ? :?:

wito35 - Wto 25 Maj, 2010 14:15

Mi wyświetla się error z 74 linijką, a mam angielskiego RPGMXP. Nie Wiem o co chodzi pomoże ktoś ?
pw115 - Wto 25 Maj, 2010 15:14

Pokazałbyś SSem ten błąd ??
wito35 - Sro 26 Maj, 2010 08:43

Aktułalnienie jestem przy tym komputerze na którym ma swój projekt ale jest jakiś problem z rgssem w 74 linijce, czy czymś.
Ayene - Sro 26 Maj, 2010 10:20

Zapewne krzyczy, że nie może utworzyć bitmapy. Ten sam błąd wyskakuje w polskiej wersji. A próbowałeś utworzyć nowy projekt w angielskim mejkerze? Sprawdź, czy wtedy działa.
wito35 - Sro 26 Maj, 2010 14:42

Ja mam tylko angielskiego RPGMXP, a jak otworze nowy projekt to wszystko jest w porządku, ale jak już dam nazwę zdarzeniu to wyskakuje błąd.

Proszę o pomoc przydały by mi się takie nazwy nad potworkami, a w gimpie nie chce mi się robić nad nimi nazw. :-(

[ Dodano: Czw 27 Maj, 2010 08:39 ]
Dokładnie pisze tam tak:

Script 'Main' line 75:RGSSError occurred
failed to create bitmup.

Proszę o pomoc, nie wiem o co chodzi. :-(

Ayene - Czw 27 Maj, 2010 08:59

wito35, a sprawdzałeś demo z tego posta? http://www.ultimateam.pl/...p?p=19511#19511
wito35 - Czw 27 Maj, 2010 09:11

Sprawdzać sprawdzałem ale nie wiem wogóle poco.


PS: Stworzyłem nowy projekt i wszystko działało nawet jak nazwałem zdarzenia, a gdy wrzuciłeś ten sam skrypt już do mojego właściwego projektu wyświetlał się właśnie tamten komunikat. Nie Wiem co robić. Na następny post bede mógł od powiedzieć gdzieś tak za 2-3 godziny. :-(

Ayene - Czw 27 Maj, 2010 09:13

A wejdź w skrypt np. Scene_Title i wklej mi tutaj jego część, może być cały.
wito35 - Czw 27 Maj, 2010 11:57

oto to co mam w Scene_Title:
Spoiler:


Kod:

#=========================================================#=====================
# &#9632; Scene_Title
#------------------------------------------------------------------------------
# &#12288;&#12479;&#12452;&#12488;&#12523;&#30011;&#38754;&#12398;&#20966;&#29702;&#12434;&#34892;&#12358;&#12463;&#12521;&#12473;&#12391;&#12377;&#12290;
#==============================================================================

class Scene_Title
  #--------------------------------------------------------------------------
  # &#9679; &#12513;&#12452;&#12531;&#20966;&#29702;
  #--------------------------------------------------------------------------
  def main
    # &#25126;&#38360;&#12486;&#12473;&#12488;&#12398;&#22580;&#21512;
    if $BTEST
      battle_test
      return
    end
    # &#12487;&#12540;&#12479;&#12505;&#12540;&#12473;&#12434;&#12525;&#12540;&#12489;
    $data_actors        = load_data("Data/Actors.rxdata")
    $data_classes       = load_data("Data/Classes.rxdata")
    $data_skills        = load_data("Data/Skills.rxdata")
    $data_items         = load_data("Data/Items.rxdata")
    $data_weapons       = load_data("Data/Weapons.rxdata")
    $data_armors        = load_data("Data/Armors.rxdata")
    $data_enemies       = load_data("Data/Enemies.rxdata")
    $data_troops        = load_data("Data/Troops.rxdata")
    $data_states        = load_data("Data/States.rxdata")
    $data_animations    = load_data("Data/Animations.rxdata")
    $data_tilesets      = load_data("Data/Tilesets.rxdata")
    $data_common_events = load_data("Data/CommonEvents.rxdata")
    $data_system        = load_data("Data/System.rxdata")
    # &#12471;&#12473;&#12486;&#12512;&#12458;&#12502;&#12472;&#12455;&#12463;&#12488;&#12434;&#20316;&#25104;
    $game_system = Game_System.new
    # &#12479;&#12452;&#12488;&#12523;&#12464;&#12521;&#12501;&#12451;&#12483;&#12463;&#12434;&#20316;&#25104;
    @sprite = Sprite.new
    @sprite.bitmap = RPG::Cache.title($data_system.title_name)
    # &#12467;&#12510;&#12531;&#12489;&#12454;&#12451;&#12531;&#12489;&#12454;&#12434;&#20316;&#25104;
    s1 = "Zaloguj"
    s2 = "Wybierz Postać"
    s3 = "Wyjdź"
    @command_window = Window_Command.new(192, [s1, s2, s3])
    @command_window.back_opacity = 160
    @command_window.x = 320 - @command_window.width / 2
    @command_window.y = 288
    # &#12467;&#12531;&#12486;&#12451;&#12491;&#12517;&#12540;&#26377;&#21177;&#21028;&#23450;
    # &#12475;&#12540;&#12502;&#12501;&#12449;&#12452;&#12523;&#12364;&#12402;&#12392;&#12388;&#12391;&#12418;&#23384;&#22312;&#12377;&#12427;&#12363;&#12393;&#12358;&#12363;&#12434;&#35519;&#12409;&#12427;
    # &#26377;&#21177;&#12394;&#12425; @continue_enabled &#12434; true&#12289;&#28961;&#21177;&#12394;&#12425; false &#12395;&#12377;&#12427;
    @continue_enabled = false
    for i in 0..3
      if FileTest.exist?("Save#{i+1}.sav")
        @continue_enabled = true
      end
    end
    # &#12467;&#12531;&#12486;&#12451;&#12491;&#12517;&#12540;&#12364;&#26377;&#21177;&#12394;&#22580;&#21512;&#12289;&#12459;&#12540;&#12477;&#12523;&#12434;&#12467;&#12531;&#12486;&#12451;&#12491;&#12517;&#12540;&#12395;&#21512;&#12431;&#12379;&#12427;
    # &#28961;&#21177;&#12394;&#22580;&#21512;&#12289;&#12467;&#12531;&#12486;&#12451;&#12491;&#12517;&#12540;&#12398;&#25991;&#23383;&#12434;&#12464;&#12524;&#12540;&#34920;&#31034;&#12395;&#12377;&#12427;
    if @continue_enabled
      @command_window.index = 1
    else
      @command_window.disable_item(1)
    end
    # &#12479;&#12452;&#12488;&#12523; BGM &#12434;&#28436;&#22863;
    $game_system.bgm_play($data_system.title_bgm)
    # ME&#12289;BGS &#12398;&#28436;&#22863;&#12434;&#20572;&#27490;
    Audio.me_stop
    Audio.bgs_stop
    # &#12488;&#12521;&#12531;&#12472;&#12471;&#12519;&#12531;&#23455;&#34892;
    Graphics.transition
    # &#12513;&#12452;&#12531;&#12523;&#12540;&#12503;
    loop do
      # &#12466;&#12540;&#12512;&#30011;&#38754;&#12434;&#26356;&#26032;
      Graphics.update
      # &#20837;&#21147;&#24773;&#22577;&#12434;&#26356;&#26032;
      Input.update
      # &#12501;&#12524;&#12540;&#12512;&#26356;&#26032;
      update
      # &#30011;&#38754;&#12364;&#20999;&#12426;&#26367;&#12431;&#12387;&#12383;&#12425;&#12523;&#12540;&#12503;&#12434;&#20013;&#26029;
      if $scene != self
        break
      end
    end
    # &#12488;&#12521;&#12531;&#12472;&#12471;&#12519;&#12531;&#28310;&#20633;
    Graphics.freeze
    # &#12467;&#12510;&#12531;&#12489;&#12454;&#12451;&#12531;&#12489;&#12454;&#12434;&#35299;&#25918;
    @command_window.dispose
    # &#12479;&#12452;&#12488;&#12523;&#12464;&#12521;&#12501;&#12451;&#12483;&#12463;&#12434;&#35299;&#25918;
    @sprite.bitmap.dispose
    @sprite.dispose
  end
  #--------------------------------------------------------------------------
  # &#9679; &#12501;&#12524;&#12540;&#12512;&#26356;&#26032;
  #--------------------------------------------------------------------------
  def update
    # &#12467;&#12510;&#12531;&#12489;&#12454;&#12451;&#12531;&#12489;&#12454;&#12434;&#26356;&#26032;
    @command_window.update
    # C &#12508;&#12479;&#12531;&#12364;&#25276;&#12373;&#12428;&#12383;&#22580;&#21512;
    if Input.trigger?(Input::C)
      # &#12467;&#12510;&#12531;&#12489;&#12454;&#12451;&#12531;&#12489;&#12454;&#12398;&#12459;&#12540;&#12477;&#12523;&#20301;&#32622;&#12391;&#20998;&#23696;
      case @command_window.index
      when 0  # &#12491;&#12517;&#12540;&#12466;&#12540;&#12512;
      when 1 # Shutdown
        command_shutdown
        command_continue
      when 2  # &#12471;&#12515;&#12483;&#12488;&#12480;&#12454;&#12531;
        command_shutdown
      end
    end
  end 
  #--------------------------------------------------------------------------
  # &#9679; &#12467;&#12510;&#12531;&#12489; : &#12491;&#12517;&#12540;&#12466;&#12540;&#12512;
  #--------------------------------------------------------------------------
  def command_new_game
    # &#27770;&#23450; SE &#12434;&#28436;&#22863;
    $game_system.se_play($data_system.decision_se)
    # BGM &#12434;&#20572;&#27490;
    Audio.bgm_stop
    # &#12503;&#12524;&#12452;&#26178;&#38291;&#35336;&#28204;&#29992;&#12398;&#12501;&#12524;&#12540;&#12512;&#12459;&#12454;&#12531;&#12488;&#12434;&#12522;&#12475;&#12483;&#12488;
    Graphics.frame_count = 0
    # &#21508;&#31278;&#12466;&#12540;&#12512;&#12458;&#12502;&#12472;&#12455;&#12463;&#12488;&#12434;&#20316;&#25104;
    $game_temp          = Game_Temp.new
    $game_system        = Game_System.new
    $game_switches      = Game_Switches.new
    $game_variables     = Game_Variables.new
    $game_self_switches = Game_SelfSwitches.new
    $game_screen        = Game_Screen.new
    $game_actors        = Game_Actors.new
    $game_party         = Game_Party.new
    $game_troop         = Game_Troop.new
    $game_map           = Game_Map.new
    $game_player        = Game_Player.new
    # &#21021;&#26399;&#12497;&#12540;&#12486;&#12451;&#12434;&#12475;&#12483;&#12488;&#12450;&#12483;&#12503;
    $game_party.setup_starting_members
    # &#21021;&#26399;&#20301;&#32622;&#12398;&#12510;&#12483;&#12503;&#12434;&#12475;&#12483;&#12488;&#12450;&#12483;&#12503;
    $game_map.setup($data_system.start_map_id)
    # &#12503;&#12524;&#12452;&#12516;&#12540;&#12434;&#21021;&#26399;&#20301;&#32622;&#12395;&#31227;&#21205;
    $game_player.moveto($data_system.start_x, $data_system.start_y)
    # &#12503;&#12524;&#12452;&#12516;&#12540;&#12434;&#12522;&#12501;&#12524;&#12483;&#12471;&#12517;
    $game_player.refresh
    # &#12510;&#12483;&#12503;&#12395;&#35373;&#23450;&#12373;&#12428;&#12390;&#12356;&#12427; BGM &#12392; BGS &#12398;&#33258;&#21205;&#20999;&#12426;&#26367;&#12360;&#12434;&#23455;&#34892;
    $game_map.autoplay
    # &#12510;&#12483;&#12503;&#12434;&#26356;&#26032; (&#20006;&#21015;&#12452;&#12505;&#12531;&#12488;&#23455;&#34892;)
    $game_map.update
    # &#12510;&#12483;&#12503;&#30011;&#38754;&#12395;&#20999;&#12426;&#26367;&#12360;
    $scene = Scene_Map.new
  end
 
  #--------------------------------------------------------------------------
  # &#9679; &#12467;&#12510;&#12531;&#12489; : &#12471;&#12515;&#12483;&#12488;&#12480;&#12454;&#12531;
  #--------------------------------------------------------------------------
  def command_shutdown
    # &#27770;&#23450; SE &#12434;&#28436;&#22863;
    $game_system.se_play($data_system.decision_se)
    # BGM&#12289;BGS&#12289;ME &#12434;&#12501;&#12455;&#12540;&#12489;&#12450;&#12454;&#12488;
    Audio.bgm_fade(800)
    Audio.bgs_fade(800)
    Audio.me_fade(800)
    # &#12471;&#12515;&#12483;&#12488;&#12480;&#12454;&#12531;
    $scene = nil
  end
  #--------------------------------------------------------------------------
  # &#9679; &#25126;&#38360;&#12486;&#12473;&#12488;
  #--------------------------------------------------------------------------
  def battle_test
    # &#12487;&#12540;&#12479;&#12505;&#12540;&#12473; (&#25126;&#38360;&#12486;&#12473;&#12488;&#29992;) &#12434;&#12525;&#12540;&#12489;
    $data_actors        = load_data("Data/BT_Actors.rxdata")
    $data_classes       = load_data("Data/BT_Classes.rxdata")
    $data_skills        = load_data("Data/BT_Skills.rxdata")
    $data_items         = load_data("Data/BT_Items.rxdata")
    $data_weapons       = load_data("Data/BT_Weapons.rxdata")
    $data_armors        = load_data("Data/BT_Armors.rxdata")
    $data_enemies       = load_data("Data/BT_Enemies.rxdata")
    $data_troops        = load_data("Data/BT_Troops.rxdata")
    $data_states        = load_data("Data/BT_States.rxdata")
    $data_animations    = load_data("Data/BT_Animations.rxdata")
    $data_tilesets      = load_data("Data/BT_Tilesets.rxdata")
    $data_common_events = load_data("Data/BT_CommonEvents.rxdata")
    $data_system        = load_data("Data/BT_System.rxdata")
    # &#12503;&#12524;&#12452;&#26178;&#38291;&#35336;&#28204;&#29992;&#12398;&#12501;&#12524;&#12540;&#12512;&#12459;&#12454;&#12531;&#12488;&#12434;&#12522;&#12475;&#12483;&#12488;
    Graphics.frame_count = 0
    # &#21508;&#31278;&#12466;&#12540;&#12512;&#12458;&#12502;&#12472;&#12455;&#12463;&#12488;&#12434;&#20316;&#25104;
    $game_temp          = Game_Temp.new
    $game_system        = Game_System.new
    $game_switches      = Game_Switches.new
    $game_variables     = Game_Variables.new
    $game_self_switches = Game_SelfSwitches.new
    $game_screen        = Game_Screen.new
    $game_actors        = Game_Actors.new
    $game_party         = Game_Party.new
    $game_troop         = Game_Troop.new
    $game_map           = Game_Map.new
    $game_player        = Game_Player.new
    # &#25126;&#38360;&#12486;&#12473;&#12488;&#29992;&#12398;&#12497;&#12540;&#12486;&#12451;&#12434;&#12475;&#12483;&#12488;&#12450;&#12483;&#12503;
    $game_party.setup_battle_test_members
    # &#12488;&#12523;&#12540;&#12503; ID&#12289;&#36867;&#36208;&#21487;&#33021;&#12501;&#12521;&#12464;&#12289;&#12496;&#12488;&#12523;&#12496;&#12483;&#12463;&#12434;&#35373;&#23450;
    $game_temp.battle_troop_id = $data_system.test_troop_id
    $game_temp.battle_can_escape = true
    $game_map.battleback_name = $data_system.battleback_name
    # &#12496;&#12488;&#12523;&#38283;&#22987; SE &#12434;&#28436;&#22863;
    $game_system.se_play($data_system.battle_start_se)
    # &#12496;&#12488;&#12523; BGM &#12434;&#28436;&#22863;
    $game_system.bgm_play($game_system.battle_bgm)
    # &#12496;&#12488;&#12523;&#30011;&#38754;&#12395;&#20999;&#12426;&#26367;&#12360;
    $scene = Scene_Battle.new
  end
end 


Ayene - Pią 28 Maj, 2010 09:51

wito35, no to teraz uważnie "posłuchaj" ;-)
Może i RM'a masz angielskiego, ale wnętrze projektu masz z RM'a polskiego :!:
Dowodem na to są, japońskie znaki, które masz umieszczone w skryptach. W wersji angielskiej programu, wszystkie komentarze zostały przetłumaczone. Tylko polska wersja - nie wiadomo czemu - ma znaki japońskie.

Naniosłam, wydaje mi się, odpowiednie poprawki. Mam nadzieję, że będzie działać na wersji polskiej:
Spoiler:

Kod:
#===============================================================
# [XP] Unoszące się nazwy zdarzeń
# Skrypt wyświetla na mapie nazwy zdarzeń.
# Skrypt przerobiony z wersji VX na XP by Ayene
#--------------------------------------------------------------
# Autor VX: Woratana [woratana@hotmail.com]
# Tłumaczenie i poprawki: Ayene [yurika@o2.pl]
# Skrypt przystosowany do wersji polskiej RM
#--------------------------------------------------------------
# Umieść skrypt nad Main
#=================================================================
module Ayene   
  KOLOR_CZCIONKI = Color.new(0,0,127, 255)  # Kolor RGB i przezroczystość 0~255
  ROZMIAR_CZCIONKI = 16                     # Rozmiar czcionki
  NAZWA_CZCIONKI = "Arial"                  # Czcionka (folder Fonts)
  KURSYWA = false                           # Kursywa (true / false)
  POGRUBIENIE = false                       # Pogrubienie (true / false)
end

class Sprite_Character < RPG::Sprite
#=================================================================
# POCZĄTEK KONFIGURACJI   
#=================================================================
  FLOAT_NAME_SHOW_ALL = true
  # Czy chcesz, aby wyświetlały się nazwy wszystkich zdarzeń?
  # (true - tak / false - nie)
 
  # Jeżeli wybrano u góry false, nazwę zdarzenia można wyświetlić dopisując [FS]
  # w jego edycji...
  # np. Statek[FS]
  FLOAT_NAME_SHOW_TAG = '[FS]'   
 
  # Jeżeli wybrano u góry true, nazwę zdarzenia można ukryć dopisując [FNS]
  # w jego edycji...
  # np. Statek[FNS]
  FLOAT_NAME_NOT_SHOW_TAG = '[FNS]'
 
  # Tutaj można ukryć słowa, które mają się nie wyświetlać w nazwie zdarzenia
  # np. FLOAT_NAME_NOT_SHOW_WORDS = ['[ny]', '[ss]', 'lol']
  # Wówczas w nazwie zdarzenia nie wyświetlą się słowa [ny], [ss] i lol.
  FLOAT_NAME_NOT_SHOW_WORDS = []
 
  FLOAT_NAME_X_OFFSET = 0 # Przesunięcie nazwy zdarzenia w poziomie (+ / -)
  FLOAT_NAME_Y_OFFSET = 0 # Przesunięcie nazwy zdarzenia w pionie (+ / -)
  FLOAT_NAME_Z = 198 # Przesunięcie nazwy zdarzenia nad (+) lub pod (-) inne zdarzenia.
#=================================================================
# KONIEC KONFIGURACJI
#=================================================================
  alias wora_floatevn_sprcha_dis dispose
  alias wora_floatevn_sprcha_upd update
 
  def dispose
    if !@charname_box.nil? and @charname_box.is_a?(Sprite)
      @charname_box.bitmap.dispose
      @charname_box.dispose
    end
    wora_floatevn_sprcha_dis
  end
 
  def update
    wora_floatevn_sprcha_upd
    if @character.is_a?(Game_Event)
      if @charname_box.nil?
        if (FLOAT_NAME_SHOW_ALL and !@character.event.name.include?(FLOAT_NAME_NOT_SHOW_TAG)) or
        (!FLOAT_NAME_SHOW_ALL and @character.event.name.include?(FLOAT_NAME_SHOW_TAG))
          @float_charname = @character.event.name.dup
          not_show_words = FLOAT_NAME_NOT_SHOW_WORDS.clone.push FLOAT_NAME_SHOW_TAG,
        FLOAT_NAME_NOT_SHOW_TAG
          not_show_words.each {|w| @float_charname.gsub!(w) {''} }           
          @charname_box = Sprite.new         
          @charname_box.z = 198         
          dummy_bitmap = Bitmap.new(32, 32)
          dummy_bitmap.font.size =  $defaultfontsize - 8
          dummy_bitmap.font.name = $defaultfonttype   
          nsize = dummy_bitmap.text_size(@float_charname)
          dummy_bitmap.dispose         
          @charname_box.bitmap = Bitmap.new(nsize.width , nsize.height)         
          @charname_box.bitmap.font.size =  $defaultfontsize - 8
          @charname_box.bitmap.font.name = $defaultfonttype   
          @charname_box.bitmap.draw_text(0, 0, nsize.width, nsize.height, @float_charname)
        else
          @charname_box = 0
        end       
      end
      if @charname_box.is_a?(Sprite)
       @charname_box.x = self.x  - (@charname_box.bitmap.width / 2) + FLOAT_NAME_X_OFFSET
       @charname_box.y = self.y - self.oy - @charname_box.bitmap.height + FLOAT_NAME_Y_OFFSET
      end
    end
  end
end

class Game_Event < Game_Character
  attr_reader :event
end


wito35 - Pią 28 Maj, 2010 15:58

Teraz wyświetla się takie coś:

Script'Scene_Title'line 61: SystemStackError occurred
Stack level too deep

PS: Proszę o pomoc.

Ayene - Pią 28 Maj, 2010 16:02

A zmień linijkę:
Kod:
FLOAT_NAME_SHOW_ALL = true

na
Kod:
FLOAT_NAME_SHOW_ALL = false

i daj w nazwie jakiegoś zdarzenia słowo "[FS]

wito35 - Pią 28 Maj, 2010 16:36

Niestety dalej to samo, problem z 61 linijką w Scene_Title.

PS: Help :-( . Na następnego posta bede mógł opowiedzieć gdzieś tak dopiero za 1-2 godz.

Ayene - Pią 28 Maj, 2010 16:42

wito35, zrób tak. Spakuj swój projekt, zhostuj na www.mediafire.com i wyślij mi link do niego albo na PW, albo wklej w tym temacie.
wito35 - Pią 28 Maj, 2010 18:59

Nie umiem używać tego programu więc zrobiłem coś takiego : :-/

http://www.mediafire.com/?lyii4wuyzbm

http://www.mediafire.com/?ttggyyitnzt

http://www.mediafire.com/?ttggyyitnzt

PS: Jak nie oto chodziło to daj znać na GG, albo napisz tu jak mam to zrobić, bo jeszcze nigdy nie hostowałem plików. :-/

Ayene - Pią 28 Maj, 2010 19:04

wito35, wybierz, File :arrow: Compress Game Data :arrow: OK i to co ci wyjdzie czyli plik z kostką niebieską zhostuj na wspomnianej stronie.
wito35 - Pią 28 Maj, 2010 22:20

Proszę o to mój projekt, pozwoliłem sobie na innego hosta plików, takiego którego ja używam. Wrócił mój kolega informatyk, który tu coś powciskał i udało się zrobić tak że na pierwszej stronie gry po włączeniu jest napis nad zdarzeniem a na drugiej mapie wyświetla się jakiś tam błąd, zresztą sama zaraz zobaczysz.


http://hostuje.net/file.p...079c88c943915a4

Ayene - Nie 30 Maj, 2010 22:43

wito35, przede wszystkim zapoznaj się z tym tutorialem :arrow: http://www.ultimateam.pl/viewtopic.php?t=2254

U mnie błąd nie wyskakuje, spróbuj poprawić skrypty, wtedy zobaczymy.

Gandahor - Pon 07 Cze, 2010 14:34

Mam pewien problem ze skryptem.
Gdy jest wpisany w Edytorze i włączam grę wszystko działa ale jak użyję na jakimś zdarzeniu dopisku [FS] np: "Hydra[FS]" i odpalę grę to po kliknięciu "Nowa Gra" Wyskakuje mi błąd:

?????'Nazwy zdarzen na mapie' ? 74 ??? RGSSError ????????
failed to create bitmap

W skrypcie mam:

FLOAT_NAME_SHOW_ALL = false

Jeśli wpiszę true a nie false to i tak mi error wyskoczy

powinno być dobrze, jakieś sugestie?

:(

Ayene - Pon 07 Cze, 2010 21:45

Gandahor, taka sugestia, że masz polskiego mejkera, który - nie wiadomo czemu - nie może poradzić sobie ze stworzeniem bitmapy. W tym poście http://www.ultimateam.pl/...p?p=28908#28908 masz wersję do "polaka", ale serio... zmień mejkera, bo nie dość, że wersja polska zawiera ogrom błędów, to w dodatku jest piracka.
Gandahor - Wto 08 Cze, 2010 18:05

Dzięki Działa! :-D
Na nowym kompie zainstaluje sobie Angielskiego, bo to nie pierwszy skrypt który mi nie chciał działać.
jeszcze raz dzięki :)

sitax5 - Czw 10 Cze, 2010 10:38

Mi się troche niechce wypełniać zresztą nieznam się na skryptach więc mogłabyś tu wkleić
kod z tak 5-15 czczionką i czczionke tak Arial Black albo inną mi to obojętne nyle by była czytelna.

Ayene - Czw 10 Cze, 2010 10:45

sitax5, tyle samo pracy. Jeśli chcesz korzystać ze skryptów, powinieneś nauczyć się najprostszej konfiguracji:
Kod:
module Ayene   
  KOLOR_CZCIONKI = Color.new(0,0,127, 255)  # Kolor RGB i przezroczystość 0~255
  ROZMIAR_CZCIONKI = 16                     # Rozmiar czcionki
  NAZWA_CZCIONKI = "Arial"                  # Czcionka (folder Fonts)
  KURSYWA = false                           # Kursywa (true / false)
  POGRUBIENIE = false                       # Pogrubienie (true / false)
end

wito35 - Sro 16 Cze, 2010 20:47

Dzięki Ayene już mi wszystko działa, jeszcze raz dzięki i sorki za zawracanie głowy :)

[ Dodano: Czw 17 Cze, 2010 17:53 ]
Mam jeszcze jedno pytanie czy da się zrobić tak że np. nad jakimś tam handlarzem jest napis na kolor niebieski a nad potworem czerwony i czy da się zrobić tak że moja nazwa postaci też jest wyświetlana nad moją głową ?. Bardzo proszę o pomoc.

poko67 - Pon 28 Cze, 2010 14:47

Ej a mam pytanko czy da się zrobić żeby nad postacią też wyświetlało... :sly:
Ayene - Pon 28 Cze, 2010 18:31

Zobacz ten temat: http://www.ultimateam.pl/...p?p=26460#26460
CreeperCrisis - Pon 28 Cze, 2010 21:53

Dodaj Skrypty dwa razy i:

w pierwszym zostaw fragment:
Kod:
  KOLOR_CZCIONKI = Color.new(0,0,127, 255)

Kod:
  # Jeżeli wybrano u góry false, nazwę zdarzenia można wyświetlić dopisując [FS]
  # w jego edycji...
  # np. Statek[FS]
  FLOAT_NAME_SHOW_TAG = '[FS]'   
 
  # Jeżeli wybrano u góry true, nazwę zdarzenia można ukryć dopisując [FNS]
  # w jego edycji...
  # np. Statek[FNS]
  FLOAT_NAME_NOT_SHOW_TAG = '[FNS]'

w drugim skrypcie zmienisz fragment i kolor na:
Kod:
  KOLOR_CZCIONKI = Color.new(127,0,0, 255)

Kod:
  # Jeżeli wybrano u góry false, nazwę zdarzenia można wyświetlić dopisując [FS]
  # w jego edycji...
  # np. Statek[FSD]
  FLOAT_NAME_SHOW_TAG = '[FSD]'   
 
  # Jeżeli wybrano u góry true, nazwę zdarzenia można ukryć dopisując [FNS]
  # w jego edycji...
  # np. Statek[FNSD]
  FLOAT_NAME_NOT_SHOW_TAG = '[FNSD]'

Działa :?: :-)

MatixEvol - Wto 29 Cze, 2010 09:23

Ja mam inny problem z tym skryptem wszystko działa ładnie ale tylko na pozór bo kiedy zdarzenie które jest mało ruchliwe i nazywa się Gnoll Sklepikarz zniknie mi z pola widzenia dokładniej ja pójdę gdzieś dalej to przy samym boku ekranu zostaje kawałek ostatniej litery czyli "z" co dziwne tak się dzieje kiedy oddalam się horyzontalnie w prawa strone od tego zdarzenia kiedy wrócę na miejsce gdzie stoi ten Gnoll napis wraca błyskawicznie nad jego głowę ale to nie koniec bo zrobiłem taki zdarzeniowy battle system w czasie rzeczywistym i kiedy wróg jest pokonany zdarzenie jest przenoszone w róg mapy a następnie usuwane problem w tym że napis zostaje i "przykleja" się do ekranu w miejscu w którym przeciwnik spędzał swoje ostatnie sekundy życia tak jest do puki nie włączymy menu lub coś w tym stylu... ale się rozpisałem :-) mam nadzieję że będzie sie komuś chciało to przeczytać ;-)
wito35 - Wto 29 Cze, 2010 17:59

Sebastian M. nie wiem czy to ma coś wspólnego z tym ale wyskakuje mi coś takie go:

http://img580.imageshack.us/i/kurcze.png/

CreeperCrisis - Sro 30 Cze, 2010 13:07

wklej wszystko jako 1 skrypt jeden pod drugim. :-) może wtedy zadziała. :-)
poko67 - Czw 08 Lip, 2010 23:04

Sebastian M co do nazwy nad postacią to nie działa może jakieś demko.. :-D
chRobal - Pią 20 Sie, 2010 14:40

Spoiler:




Ayene help

Ayene - Pią 20 Sie, 2010 16:15

To błąd u Ciebie... co to za Window_okno masz?
chRobal - Sob 21 Sie, 2010 09:57

Nie wiem
Yoroiookami - Sob 21 Sie, 2010 10:09

sniper07 - ściągnij angielską wersję, albo upewnij się że masz DOBRĄ polską wersję, bo ten błąd jest praktycznie znikąd i na pewno nie jest winą skryptu. :kable:
rpgmigara - Nie 26 Gru, 2010 16:19

Mi nie wchodzi . Ja mam polaka może temu .?
Sabikku - Nie 26 Gru, 2010 16:31

Możliwe że temu.
dawidxdf - Pią 18 Lut, 2011 22:52

Czeliosss napisał/a:
Bardzo możliwe, że to przez polską wersję, ale nie będe płacił 270 zł za jakiś tam program.


Wiem co jest tego powodem na starcie nie może być przełącznika[ON] auto...

jak ja tak zrobiłem to też tak miałem

YamahaPL - Wto 27 Mar, 2012 17:41
Temat postu: Skrypt Nazwy Zdarzen
Skrypt Świetny! A jeśli o polskiego Mejkera to lepiej sobie zhakować angielską wersje i nie będzie trialu :)


:faja:

Mateusz SSJ8 - Sro 28 Mar, 2012 19:41

Można też ściągnąć rgss102e.dll, zmienić jej nazwę na "rgss100j.dll" i wrzucić do projektu.

Powered by phpBB modified by Przemo © 2003 phpBB Group