Ogłoszenie 

Uwaga! To forum jest w trybie offline.
Wszelką pomoc uzyskasz pod adresem
forum.ultimateam.pl


Administracja Forum


Poprzedni temat «» Następny temat
Zamknięty przez: Ayene
Pon 10 Sty, 2011 13:00
Pomoc w budowie menu ff 7.
Autor Wiadomość
CrasheR 




Pomógł: 123 razy
Dołączył: 20 Gru 2010
Posty: 609
Skąd: Nibelheim
Wysłany: Czw 06 Sty, 2011 13:19
Pomoc w budowie menu ff 7.
Jak zrobić tak by w menu lista komend była przed status_window?
Chcę przestawić komendy, ale niestety o okno mi je zasłania.

Screen:


Gdy skończę skrypt dodam go na forum.
 
 
 
Ayene 




Ranga RM:
4 gry

Pomogła: 232 razy
Dołączyła: 18 Wrz 2007
Posty: 2424
Wysłany: Czw 06 Sty, 2011 14:56
CrasheR, wklej skrypt na forum (albo wyślij mi na PW).
________________________


 
 
 
Angius 

Nie wkurzać



Preferowany:
RPG Maker VX

Pomógł: 104 razy
Dołączył: 30 Paź 2010
Posty: 1276
Skąd: wROCK
Wysłany: Pią 07 Sty, 2011 14:39
A czy czasami na forum nie ma gotowego skryptu na menu FF7?
________________________
"Na trolla pewne są tylko dwie pewne metody, jedna samopowtarzalna i druga, wymagająca przeładowania ręcznego."


 
 
Ayene 




Ranga RM:
4 gry

Pomogła: 232 razy
Dołączyła: 18 Wrz 2007
Posty: 2424
Wysłany: Pią 07 Sty, 2011 15:23
Jest menu FF IX :arrow: http://www.ultimateam.pl/viewtopic.php?t=3274 Ale CrasheR może mieć jeszcze inny skrypt.
________________________


 
 
 
CrasheR 




Pomógł: 123 razy
Dołączył: 20 Gru 2010
Posty: 609
Skąd: Nibelheim
Wysłany: Sob 08 Sty, 2011 21:51
Ja tworzę własny skrypt, który zmienia menu na te z FF 7, a nie 9. Jedynym minusem jest to, że nie potrafię odsłonić okna komend. Widać to na zdjęciu.

Oto skrypt:
Kod:

##################################################
# FF VII menu version 1.0                    #
##################################################
# By CrasheR
# Są to zmiksowane skrypty menu_z_dodatkami i FF 9

menu.
# Skrypt tworzyłem metodą na klikanie gdyż nie

znam się na skryptowaniu.
# Skypt należy dodać nad Main

module FF7_Config
 
  # ID ikonki złota: Jeśli chcesz zmienić ikonkę,

która znajduje się obok liczby złota w menu

wybierz inną
 # z pliku "Iconset" np. 194
  GOLD_ICON_ID = 0

  # Nazwa obrazka, które ma być tłem.
 # Obrazek należy umieścić w folderze

Graphics/Pictures.
  BACK_NAME = 'black'
 
    # Animowany kursor - do przodu i do tyłu (true

/ false)
  ANIMATE_CURSOR = false
end
#=================================================

=============================
# ■ Window_Base
#-------------------------------------------------

-----------------------------
#=================================================

=============================

 class Window_Base < Window
 

#-------------------------------------------------

-------------------------
  # &#9679; &#23450;&#25968;
 

#-------------------------------------------------

-------------------------
  WLH = 24                  # &#34892;&#12398;&#39640;&#12373;&#22522;&#28310;&#20516; (Window Line

Height)
 

#-------------------------------------------------

-------------------------
  # &#9679; &#12458;&#12502;&#12472;&#12455;&#12463;&#12488;&#21021;&#26399;&#21270;
  #     x      : &#12454;&#12451;&#12531;&#12489;&#12454;&#12398; X &#24231;&#27161;
  #     y      : &#12454;&#12451;&#12531;&#12489;&#12454;&#12398; Y &#24231;&#27161;
  #     width  : &#12454;&#12451;&#12531;&#12489;&#12454;&#12398;&#24133;
  #     height : &#12454;&#12451;&#12531;&#12489;&#12454;&#12398;&#39640;&#12373;
 

#-------------------------------------------------

-------------------------
  def initialize(x, y, width, height)
    super()
    self.windowskin = Cache.system("Window")
    self.x = x
    self.y = y
    self.width = width
    self.height = height
    self.z = 100
    self.back_opacity = 20000
    self.openness = 255
    create_contents
    @opening = false
    @closing = false
  end
 

#-------------------------------------------------

-------------------------
  # &#9679; &#35299;&#25918;
 

#-------------------------------------------------

-------------------------
  def dispose
    super
  end
 

#-------------------------------------------------

-------------------------
  # &#9679; &#12454;&#12451;&#12531;&#12489;&#12454;&#20869;&#23481;&#12398;&#20316;&#25104;
 

#-------------------------------------------------

-------------------------
  def create_contents
    self.contents.dispose
    self.contents = Bitmap.new(width - 32, height

- 32)
  end
 

#-------------------------------------------------

-------------------------
  # &#9679; &#12501;&#12524;&#12540;&#12512;&#26356;&#26032;
 

#-------------------------------------------------

-------------------------
  def update
    super
    if @opening
      self.openness += 48
      @opening = false if self.openness == 255
    elsif @closing
      self.openness -= 48
      @closing = false if self.openness == 0
    end
  end
 

#-------------------------------------------------

-------------------------
  # &#9679; &#12454;&#12451;&#12531;&#12489;&#12454;&#12434;&#38283;&#12367;
 

#-------------------------------------------------

-------------------------
  def open
    @opening = true if self.openness < 255
    @closing = false
  end
 

#-------------------------------------------------

-------------------------
  # &#9679; &#12454;&#12451;&#12531;&#12489;&#12454;&#12434;&#38281;&#12376;&#12427;
 

#-------------------------------------------------

-------------------------
  def close
    @closing = true if self.openness > 0
    @opening = false
  end
 

#-------------------------------------------------

-------------------------
  # &#9679; &#25991;&#23383;&#33394;&#21462;&#24471;
  #     n : &#25991;&#23383;&#33394;&#30058;&#21495; (0&#65374;31)
 

#-------------------------------------------------

-------------------------
  def text_color(n)
    x = 64 + (n % 8) * 8
    y = 96 + (n / 8) * 8
    return windowskin.get_pixel(x, y)
  end

 

#-------------------------------------------------

-------------------------
  # &#9679; HP &#12466;&#12540;&#12472;&#12398;&#33394; 1 &#12398;&#21462;&#24471;
 

#-------------------------------------------------

-------------------------
  def hp_gauge_color1
    return text_color(23)
  end
 

#-------------------------------------------------

-------------------------
  # &#9679; HP &#12466;&#12540;&#12472;&#12398;&#33394; 2 &#12398;&#21462;&#24471;
 

#-------------------------------------------------

-------------------------
  def hp_gauge_color2
    return text_color(0)
  end
 

#-------------------------------------------------

-------------------------
  # &#9679; MP &#12466;&#12540;&#12472;&#12398;&#33394; 1 &#12398;&#21462;&#24471;
 

#-------------------------------------------------

-------------------------
  def mp_gauge_color1
    return text_color(3)
  end
 

#-------------------------------------------------

-------------------------
  # &#9679; MP &#12466;&#12540;&#12472;&#12398;&#33394; 2 &#12398;&#21462;&#24471;
 

#-------------------------------------------------

-------------------------
  def mp_gauge_color2
    return text_color(0)
  end
 

#-------------------------------------------------

-------------------------
  # &#9679; &#36890;&#36008;&#21336;&#20301;&#12388;&#12365;&#12398;&#25968;&#20516;&#25551;&#30011;
  #     value : &#25968;&#20516; (&#25152;&#25345;&#37329;&#12394;&#12393;)
  #     x     : &#25551;&#30011;&#20808; X &#24231;&#27161;
  #     y     : &#25551;&#30011;&#20808; Y &#24231;&#27161;
  #     width : &#24133;
 

#-------------------------------------------------

-------------------------
  def draw_currency_value(value, x, y, width)
    cx = contents.text_size(Vocab::gold).width
    self.contents.font.color = normal_color
    self.contents.draw_text(x, y, width-cx-2, WLH,

value, 2)
    self.contents.font.color = system_color
    self.contents.draw_text(x, y, width, WLH,

Vocab::gold, 2)
  end
end

########################################
########################################
########################################

module Szkodnik_Sae       
Lokacja = "Lokacja"
Czas_gry = "Czas Gry"
Doswiadczenie = "EXP"     
end


class Game_Actor < Game_Battler
def now_exp
return @exp - @exp_list[@level]
end
def next_exp
return @exp_list[@level+1] > 0 ?

@exp_list[@level+1] - @exp_list[@level] : 0
end
end

 class Window_Base < Window

 
  def draw_actor_level_menu(actor, x, y)
    self.contents.font.color = system_color
    self.contents.draw_text(x - 200, y + 18, 32,

WLH, Vocab::level_a)
    self.contents.font.color = normal_color
    self.contents.draw_text(x - 185, y + 18, 24,

WLH, actor.level, 2)
  end
  def draw_actor_class_menu(actor, x, y)
    self.contents.font.color = normal_color
    self.contents.draw_text(x + 8, y, 85, WLH,

actor.class.name)
  end   
 def exp_gauge_color1
    return text_color(30)
  end
  def exp_gauge_color2
    return text_color(31)
  end
def draw_actor_exp_meter(actor, x, y, width = 100)
  if actor.next_exp != 0
  exp = actor.now_exp
  else
  exp = 1
  end
    gw = width * exp / [actor.next_exp, 1].max
    gc1 = exp_gauge_color1
    gc2 = exp_gauge_color2
    self.contents.fill_rect(x + 130, y + 30,

width, 6, gauge_back_color)
    self.contents.gradient_fill_rect(x + 125, y +

30, gw, 6, gc1, gc2)
    self.contents.font.color = system_color
    self.contents.draw_text(x + 130, y + 13, 30,

WLH, Szkodnik_Sae::Doswiadczenie)   
    self.contents.font.color = normal_color
    xr = x + width
    self.contents.draw_text(xr + 70, y + 13, 60,

WLH,  actor.next_rest_exp_s, 2)   
  end
end

 class Window_MenuStatus < Window_Selectable
  def initialize(x, y)
     super(7, 45, 420, 320)
    refresh
    self.active = false
    self.index = -1
  end
  def refresh
    self.contents.clear
    @item_max = $game_party.members.size
    for actor in $game_party.members
      draw_actor_face(actor, 2, actor.index * 96 +

2, 92)
      x = 104
      y = actor.index * 96 + WLH / 2
      draw_actor_name(actor, x, y)
      draw_actor_class_menu(actor, x + 120, y)
      draw_actor_level_menu(actor, x + 200, y)
      draw_actor_state(actor, x, y + WLH * 2)
      draw_actor_hp(actor, x , y + WLH + 14 * 1)
      draw_actor_mp(actor, x , y + WLH + 18 * 2)
      draw_actor_exp_meter(actor, x , y + WLH * 1)
    end
   end
  def update_cursor
    if @index < 0   
      self.cursor_rect.empty
    elsif @index < @item_max   
      self.cursor_rect.set(0, @index * 96,

contents.width, 96)
    elsif @index >= 100         
      self.cursor_rect.set(0, (@index - 100) * 96,

contents.width, 96)
    else                     
      self.cursor_rect.set(0, 0, contents.width,

@item_max * 96)
    end
  end
end
class Game_Map
attr_reader   :map_id
def mpname
$mpname = load_data("Data/MapInfos.rvdata")
$mpname[@map_id].name
end
end

 class Window_Mapname < Window_Base
  def initialize(x, y)
    super(x, y, 300, WLH + 30)
    refresh
  end
def refresh
    self.contents.clear
    self.contents.font.color = normal_color
    self.contents.draw_text(0, 0, 200, 32,

$game_map.mpname.to_s, 2)
    end
  end

  class Scene_Menu
  def main
    start                         
    perform_transition           
    Input.update                 
    loop do
      Graphics.update           
      Input.update             
      update                     
      break if $scene != self     
    end
    Graphics.update
    pre_terminate             
    Graphics.freeze               
    terminate                   
  end
  def initialize(menu_index = 0)
    @menu_index = menu_index
  end
  def create_menu_background
    @menuback_sprite = Sprite.new
    @menuback_sprite.bitmap =

$game_temp.background_bitmap
    @menuback_sprite.color.set(16, 16, 16, 128)
    update_menu_background
  end
  def create_menu_background
      @menuback_sprite = Sprite.new
      @menuback_sprite.bitmap =

Cache.picture(FF7_Config::BACK_NAME)
      @menuback_sprite.color.set(16, 16, 16, 128)
      update_menu_background
  end
  def dispose_menu_background
    @menuback_sprite.dispose
  end
  def update_menu_background
  end
  def perform_transition
     Graphics.transition(10)
  end
  def start
    create_menu_background
    create_command_window
    @status_window = Window_MenuStatus.new(0, 0)
    @mapname_window = Window_Mapname.new(230, 360)
    @status_window.openness = 2000
    @mapname_window.openness = 2000
    @status_window.open
    @mapname_window.open
    @gold_window = Window_TimeGold.new(480, 360)
    @gold_window.y -= @gold_window.height
    @gold_window.x = 528 - @gold_window.width
  end
  def pre_terminate
    @status_window.close
    @gold_window.close
    @mapname_window.close
    @gold_window.close
    @command_window.close
    begin
    @status_window.update
    @gold_window.update
    @mapname_window.update
    @gold_window.update
    @command_window.update
    Graphics.update
    end until @status_window.openness == 0
  end
  def terminate
    dispose_menu_background
    @command_window.dispose
    @gold_window.dispose
    @status_window.dispose
    @gold_window.dispose
    @mapname_window.dispose
  end
  def update
    update_menu_background
    @command_window.update
    @gold_window.update
    @status_window.update
    @mapname_window.update
    @gold_window.update
    if @command_window.active
      update_command_selection
    elsif @status_window.active
      update_actor_selection
    end
  end
 def create_command_window
    s1 = Vocab::item
    s2 = Vocab::skill
    s3 = Vocab::equip
    s4 = Vocab::status
    s5 = Vocab::save
    s6 = Vocab::game_end
    @command_window = Window_Command.new(160, [s1,

s2, s3, s4, s5, s6])
    @command_window.index = @menu_index
    @command_window.openness = 2000
    @command_window.open
    if $game_party.members.size == 0           
      @command_window.draw_item(0, false)     
      @command_window.draw_item(1, false)     
      @command_window.draw_item(2, false)     
      @command_window.draw_item(3, false)   
    end
    if $game_system.save_disabled             
      @command_window.draw_item(4, false)     
    end
    @command_window.index = -1
    @command_window.x = 528 -

@command_window.width
    @command_window.y = 16
    @command_window.back_opacity = 255
    @command_window.refresh
    @command_window.index = @menu_index
  end

  end
  def update_command_selection
    if Input.trigger?(Input::B)
      Sound.play_cancel
      $scene = Scene_Map.new
    elsif Input.trigger?(Input::C)
      if $game_party.members.size == 0 and

@command_window.index < 4
        Sound.play_buzzer
        return
      elsif $game_system.save_disabled and

@command_window.index == 4
        Sound.play_buzzer
        return
      end
      Sound.play_decision
      case @command_window.index
      when 0     
        $scene = Scene_Item.new
      when 1,2,3   
        start_actor_selection
      when 4       
        $scene = Scene_File.new(true, false,

false)
      when 5     
        $scene = Scene_End.new
      end
    end
  end
  def start_actor_selection
    @command_window.active = false
   
    @status_window.active = true
    if $game_party.last_actor_index <

@status_window.item_max
      @status_window.index =

$game_party.last_actor_index
    else
      @status_window.index = 0
    end
  end
  def end_actor_selection
    @command_window.active = true
    @status_window.active = false
    @status_window.index = -1
  end
  def update_actor_selection
    if Input.trigger?(Input::B)
      Sound.play_cancel
      end_actor_selection
    elsif Input.trigger?(Input::C)
      $game_party.last_actor_index =

@status_window.index
      Sound.play_decision
      case @command_window.index
      when 1
        $scene =

Scene_Skill.new(@status_window.index)
      when 2   
        $scene =

Scene_Equip.new(@status_window.index)
      when 3
        $scene =

Scene_Status.new(@status_window.index)
      end
    end
  end

$mogscript = {} if $mogscript == nil
$mogscript["basic_menu_plus"] = true

 class Window_TimeGold < Window_Base
   
  def initialize(x, y)
    width = find_window_width("9999999")
    width = 140 if width < 140
    super(x, y, width, WLH + 58)   
    self.back_opacity = 255

    @time_icon = Cache.picture('Timer')
    @intern_frame_count = 0
    refresh
  end
 
  def draw_time
    sec = (Graphics.frame_count / 60) % 60
    min = (Graphics.frame_count / 3600) % 60
    hrs = Graphics.frame_count / 216000   
    self.contents.font.color = Color.new(255, 255,

255)   
    time = "%02d:%02d:%02d" % [hrs, min, sec]
    self.contents.draw_text(0, 0,

self.contents.width, WLH, time, 2)   
  end
 
  def refresh
    self.contents.clear
    self.contents.blt(0, 0, @time_icon,

@time_icon.rect)
    draw_icon(FF7_Config::GOLD_ICON_ID, 2, WLH)


    draw_currency_value($game_party.gold, 0, WLH,

self.contents.width)
    draw_time
  end
 
  def draw_currency_value(value, x, y, width)
    gold_text = Vocab.gold
    cx = contents.text_size(gold_text[0,1]).width
    self.contents.font.color = normal_color
    self.contents.draw_text(x, y, width - cx - 2,

WLH, value, 2)
  end
 
  def update
    super
    @intern_frame_count += 1
    return if (@intern_frame_count % 60) != 0     

   
    refresh
  end
 
  def find_window_width(text)             
    return Bitmap.new(544,

416).text_size(text).width + 80
  end     
end
[/fade]
 
 
 
Ayene 




Ranga RM:
4 gry

Pomogła: 232 razy
Dołączyła: 18 Wrz 2007
Posty: 2424
Wysłany: Nie 09 Sty, 2011 18:53
Znajdź linijkę:
Kod:
@command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6])

i pod nią wklej, np:
Kod:
@command_window.z = 1000


Radziłam uporządkować choć trochę skrypt... ciężko się w nim czegokolwiek doszukać.
________________________


 
 
 
CrasheR 




Pomógł: 123 razy
Dołączył: 20 Gru 2010
Posty: 609
Skąd: Nibelheim
Wysłany: Nie 09 Sty, 2011 23:20
Dziękuję działa bardzo ładnie. Teraz mogę ukończyć skrypt i dodać go na forum;]
Pozdrawiam.
________________________



 
 
 
Wyświetl posty z ostatnich:   
Ten temat jest zablokowany bez możliwości zmiany postów lub pisania odpowiedzi
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

Powered by phpBB modified by Przemo © 2003 phpBB Group | Template Klam by Ayene