Ekran tytułowy i kilka pytań.
Aktualny czas: 28-04-26, 19:51 Witaj! Przejdź do zakładki Logowanie lub Rejestracja


Wątek zamknięty 
[VXAce] Ekran tytułowy i kilka pytań.
arturretke Offline
*


Liczba postów: 5
Dołączył: 26-06-15

Pomógł: 0



Post: #1
Ekran tytułowy i kilka pytań.

Witam.

Jestem nowy na forum i zamierzam wziąć się do roboty ;)
Czytałem nieco o Ruby, pytałem wujka Google, ale wciąż nie znalazłem sensownej odpowiedzi na moje pytania. Otóż:

1. Mam swoje własne foto, które dodaję jako ekran tytułowy. Jest ono w formacie JPG (gdy importuje jako PNG, są jakieś dziwne "skazy"). Stosowałem różne rozdzielczości, lecz efekt zawsze ten sam: zdjęcie nie dopasowuje się do rozmiarów ekranu, tylko "wyśrodkowuje się", a po bokach, na górze i na dole jest czarna przestrzeń. Co zrobić, by temu zaradzić?

2. Jak sprawić, aby tytuł gry nie pojawiał się wraz z ekranem tytułowym, ale chwilę po np. po 4-5 sekundach?

3. Czy jest możliwe ustawienie następującej kombinacji:

Marzy mi się, by tytuł gry był w lewym, dolnym rogu Title Screen (to zrobiłem), a następnie trzeba nacisnąć Enter, aby zniknął. Potem następuje 1-2 sekundowa przerwa i w miejsce tytułupojawia się menu z 3-ema standardowymi opcjami do wyboru.
Teraz najważniejsze: aby to menu nie posiadało ramki i tła, a rozmiarem i umiejscowieniem (lewy, dolny róg) przypominało widoczny przedtem tytuł gry.

Przeglądałem zakładki WindowsTitle, SceneTitle, ale jedyne co udało mi się odnaleźć to rozmiary tej ramki, jej fade_in, a chcę ją po prostu zlikwidować i zostawić same 3 opcje główne.

Wiem, że to może wymagać czasu, więc będę bardzo wdzięczny, jeśli ktoś go poświęci na wyjaśnienie choć jednego z 3-ech problemów.
Dzięki z góry, pozdro!
27-06-15 00:08
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Adrapnikram Offline
*


Liczba postów: 571
Dołączył: 04-10-13

Pomógł: 45



Post: #2
RE: Ekran tytułowy i kilka pytań.

1. To przez rozdzielczość VXAce. Musiałbyś znaleźć skrypt, który by ci ją zmienił.
2. Tu może być pomocny skrypt Advance Title Menu. Poszukaj bo trochę tego jest.
3. Ten sam skrypt. Ale jeśli chcesz żeby dokładnie to tak wyglądało musiałbyś się pobawić się ze zdarzeniami i w gimpie.
27-06-15 01:43
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
ShiroĒsu Offline
*


Liczba postów: 42
Dołączył: 19-02-15

Pomógł: 6



Post: #3
RE: Ekran tytułowy i kilka pytań.

Kiedy będę miał czas napisze ci podstawowy poradnik odnośnie menu. A na razie łap ten skrypt aby ominąć podstawowe:
#=====================================
# Wstaw nad Main.
#=====================================

module SceneManager
    def self.run
        DataManager.init
        Audio.setup_midi if use_midi?
            DataManager.setup_new_game            
            $game_map.autoplay                    
            SceneManager.goto(Scene_Map)          
        end                                        
        @scene.main while @scene
    end
end
[/quote]
Skrypt jest zrobiony na szybko, więc pisz jakby coś nie działało.

Jeżeli myślisz że czegoś nie osiągniesz, masz rację niczego nie osiągniesz tak myśląc.
(Ten post był ostatnio modyfikowany: 27-06-15 11:01 przez ShiroĒsu.)
27-06-15 11:00
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
arturretke Offline
*


Liczba postów: 5
Dołączył: 26-06-15

Pomógł: 0



Post: #4
RE: Ekran tytułowy i kilka pytań.

Dziękuję za odpowiedzi.

Cytat:2. Tu może być pomocny skrypt Advance Title Menu. Poszukaj bo trochę tego jest.
3. Ten sam skrypt. Ale jeśli chcesz żeby dokładnie to tak wyglądało musiałbyś się pobawić się ze zdarzeniami i w gimpie.

Z tymi Advanced Title Screen faktycznie jest dużo poradników, filmików itp. Większość ma ten sam efekt unoszących się baniek, ale mniejsza z tym. Mi chodziłoby bardziej o mgłę, jeśli już, ale może pozostać samo zdjęcie bez dodatkowego efektu. Jedyną animacją ma być pojawiający się tytuł gry, a po nim menu główne w tym samym miejscu.[/quote]

Cytat:1. To przez rozdzielczość VXAce. Musiałbyś znaleźć skrypt, który by ci ją zmienił.

I to jest główny problem - zmiana rozdzielczości tak, aby po przełączeniu na Full Screen, zdjęcie również było na Full Screen. Kiedy osiągnąłbym to, wtedy mogę kombinować z tymi efektami, napisami i zacząć kolejne schody ;)

Cytat:Skrypt jest zrobiony na szybko, więc pisz jakby coś nie działało.

A no, wkleiłem to, co podałeś.
Wyskoczyło:
Script (tu jakieś chińskie znaki, ale jest nad Main), line 11: SyntaxError occured. Unexpected keyword_end, expecting $end.

Kiedy przed "end" stawiam to "oczekiwane" $, okienko gry pojawia się na sekundę i znika.[/quote]
(Ten post był ostatnio modyfikowany: 27-06-15 12:04 przez arturretke.)
27-06-15 12:04
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
ShiroĒsu Offline
*


Liczba postów: 42
Dołączył: 19-02-15

Pomógł: 6



Post: #5
RE: Ekran tytułowy i kilka pytań.

Sorry faktycznie spieprzone, użyj tego skryptu.
module SceneManager
    def self.run
        DataManager.init
        Audio.setup_midi if use_midi?
        if DataManager.save_file_exists? == false  
            DataManager.setup_new_game            
            $game_map.autoplay                    
            SceneManager.goto(Scene_Map)        
        else                                      
            DataManager.setup_new_game            
            $game_map.autoplay                    
            SceneManager.goto(Scene_Map)                
        end                                      
        @scene.main while @scene
    end
end


Poradnik



Najważniejszy mechanizm.
Wchodzisz w równoległe zdarzenia i jedno z nich nazywasz np. menu.
Ustawiasz je na "auto start", przełącznik np. menu.
-Komendy to kolejno:

warunek (jeżeli strzałka skierowana w górę wciśnięta), zmienna (nazwij ją jak chcesz np "menu") +1
warunek (jeżeli strzałka w duł wciśnięta) zmienna menu -1
warunek (jeżeli zmienna menu = -2, ustaw zmienna menu -1
warunek (jeżeli zmienna menu = 2, ustaw zmienna menu 1

warunek zmienna menu = 1, warunek strzałka (w lewo albo w prawo jak wolisz) wciśnięta, teleportuj gracza (na mapę gdzie rozpoczyna się gra), ruszaj zdarzeniem (gracz) zmień wygląd na wygląd głównego bohatera.

warunek zmienna menu = 0, warunek strzałka (w lewo albo w prawo jak wolisz) wciśnięta, wywołaj skrypt
SceneManager.call(Scene_Load)

warunek zmienna menu = -1, warunek strzałka (w lewo albo w prawo jak wolisz), wywołaj skrypt
SceneManager.exit
[Obrazek: h_xgt9F5C9B_OCeCtuyjX-BMXhlhkvwZE7SItEP-...ize_mode=2]


Teraz kolejny ważny mechanizm



-Najpierw tworzymy mapę dowolnych rozmiarów, ma być pusta.

-Następnie ustawiamy char głównego bohatera na "(None)".

-Teraz stwórz mapę na której powstanie twoje menu. Jej rozmiar powinien być 17x13 chyba że używasz tego skryptu:
Graphics.resize_screen(640, 480)
wtedy 20x15.

-Start drużyny postawić musisz na pustej mapie.

-Kolejnym krokiem będzie stworzenie zdarzenia z autostartem. Tutaj masz dwie opcje.
a)Wstawiasz obrazek o przezroczystości zero a następnie wybierasz opcję ruszaj obrazkiem gdzie przezroczystość jest normalna.

[Obrazek: OE_Xn9e9LH8PgAXIMuWMI3xti6irVZAGubo4TMLG...ize_mode=2]
b)Zmieniasz kolor ekranu na dowolny, ale koniecznie jednolity.
[Obrazek: ku3Kq4rGU-Etoogw7eVgg8AjNL62x_MfEiQPrhR2...ize_mode=2]
-Teraz ustawiasz teleport w tym samym zdarzeniu, ma przenosić do mapy na której robisz menu.
-W mapie menu robisz zdarzenie z autostartem które ma zawierać kolejno:
a)Przełącznik menu "on", Ruszaj obrazkiem (przezroczystość na zero), usuń obrazek, usuń zdarzenie.
b)Przełącznik menu "on", Zmień barwę ekranu (normalny), usuń zdarzenie.

Co do aspektów wizualnych, tu już sobie pokombinuj


Tło ustawiasz w parallax rozmiar to 544x416 albo 640x480.

Przykładowe przyciski.

-ustaw trzy zdarzenia w rzędzie

-pierwsze ma mieć grafikę przycisku startu gry.
warunek zmienna menu = 1, zmień przełącznik własny A.
Nowa strona z warunkiem A = on, ma mieć przekolorowaną grafikę czy coś.

-drugie ma mieć grafikę przycisku wczytywania zapisu.
warunek zmienna menu = 0, zmień przełącznik własny A.
Nowa strona z warunkiem A = on, ma mieć przekolorowaną grafikę czy coś.

-trzecie ma mieć grafikę przycisku wyłączania gry.
warunek zmienna menu = -1, zmień przełącznik własny A.
Nowa strona z warunkiem A = on, ma mieć przekolorowaną grafikę czy coś.

Ps. Jak ktoś to ogarnie to proszę o przetłumaczenie na ludzki, jestem beznadziejny w pisaniu poradników :cry:.

Jeżeli myślisz że czegoś nie osiągniesz, masz rację niczego nie osiągniesz tak myśląc.
28-06-15 23:41
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a): arturretke
arturretke Offline
*


Liczba postów: 5
Dołączył: 26-06-15

Pomógł: 0



Post: #6
RE: Ekran tytułowy i kilka pytań.

Dzięki za poświęcony czas i tak szczegółowe wyjaśnienie. Dopiero wróciłem z pracy, więc gdy tylko ja znajdę chwilę czasu, zabiorę się za robotę.
Pozdrawiam!!!
29-06-15 05:50
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
arturretke Offline
*


Liczba postów: 5
Dołączył: 26-06-15

Pomógł: 0



Post: #7
RE: Ekran tytułowy i kilka pytań.

Na początek mam jednak jeszcze pytanie.
Posiadam skrypt oferujący możliwość dodania własnego logo przed właściwym ekranem tytułowym. Wygląda tak:

#==============================================================================
# ** Scene_Title
#------------------------------------------------------------------------------
#  This class performs the title screen processing.
#==============================================================================

class Scene_Title < Scene_Base
  #--------------------------------------------------------------------------
  # * Constants
  #--------------------------------------------------------------------------
  # Splash Settings Hash
  SPLASH_SETTINGS = {
  # First Splash Image (Simple Fade in and Fade out with infinite duration)
  1 => {:name => "Splash1", :fadein => 20, :fadeout => 0, :duration => 300,
        :skippable => false, :centered => true, :end_wait => 0},

  # Second Splash Image (Sound with Fade in and Fade out with limited duration)
  2 => {:name => "Splash2", :fadein => 0, :fadeout => 20, :duration => 300,
        :skippable => false, :centered => true}
  }
  # Show Flash when returning to the title from the game
  RETURN_SPLASH_SHOW = false
  # Show on Play Test
  SHOW_ON_PLAYTEST = true #false
  #--------------------------------------------------------------------------
  # * Alias Listings
  #--------------------------------------------------------------------------
  alias tds_splash_screen_scene_title_initialize                   initialize
  #--------------------------------------------------------------------------
  # * Object Initialization
  #--------------------------------------------------------------------------
  def initialize  
    # Start Splash Intro
    start_splash_intro  
    # Run Original Method
    tds_splash_screen_scene_title_initialize
  end
  #--------------------------------------------------------------------------
  # * Start Processing
  #--------------------------------------------------------------------------
  def start_splash_intro
    # Return if Show on Play Test is false
    return if $TEST and !SHOW_ON_PLAYTEST
    # Fadeout Screen
    Graphics.fadeout(0)  
    # Dispose of SceneManager Background Bitmap if it's not nil
    SceneManager.background_bitmap.dispose if !SceneManager.background_bitmap.nil?
    # Return if Return Flash Show is false and Stack is not empty
    return if !RETURN_SPLASH_SHOW and !SceneManager.instance_variable_get(:@stack).empty?  
    # Display Splash Images
    SPLASH_SETTINGS.keys.sort.each {|i| display_splash_image(SPLASH_SETTINGS[i])}
  end
  #--------------------------------------------------------------------------
  # * Display Splash Image
  #     settings : splash image settings
  #--------------------------------------------------------------------------
  def display_splash_image(settings)
    # Return if settings are nil
    return if settings.nil?
    # Make Splash Image Sprite
    @splash_image = Sprite.new
    # Make Splash Image Bitmap
    @splash_image.bitmap = Cache.picture(settings[:name])
    # Center Sprite if Applicable
    center_sprite(@splash_image) if settings[:centered]
    # Fade In
    Graphics.fadein(settings[:fadein])  
    # If Start SE
    if settings[:start_SE]
      # Sound Effect Args
      se_args = settings[:start_SE].dup
      # Add Folder Location to SE Name
      se_args[0] = 'Audio/SE/' + settings[:start_SE][0]
      # Play SE if Applicable
      Audio.se_play(*se_args)      
    end
  
    # If Start ME
    if settings[:start_ME]
      # Sound Effect Args
      me_args = settings[:start_ME].dup
      # Add Folder Location to SE Name
      me_args[0] = 'Audio/ME/' + settings[:start_ME][0]
      # Play SE if Applicable
      Audio.me_play(*me_args)      
    end  
  
    # If Duration is Infinite
    if settings[:duration].is_a?(Float) and settings[:duration].infinite?    
      # Duration Wait
      loop do
        # Update Basic Components
        update_basic
        # Break if Input Trigger C or B
        break if Input.trigger?(:C) or Input.trigger?(:B)
      end
    else
      # Duration Wait
      settings[:duration].times do
        # Update Basic Components
        update_basic
        # Break if Skippable and Input Trigger C or B
        break if settings[:skippable] and Input.trigger?(:C) or Input.trigger?(:B)
      end
    end  
    # Fadeout
    Graphics.fadeout(settings[:fadeout])
    # After Splash Image Display Delay
    settings[:end_wait].times do update_basic end if settings[:end_wait]
    # Stop SE and ME sounds
    RPG::SE.stop ; RPG::ME.stop
    # Dispose of Splash Image
    @splash_image.dispose ; @splash_image = nil
  end
end

Jak wpasować ten skrypt, który podałeś na ominięcie menu podstawowego, żeby nie kolidował z powyższym? Chodzi mi o to, by dwa obrazki przed-tytułowe, które dodałem, zostały, a zaraz po nich było moje własne menu.
29-06-15 13:44
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.