Game over nie zwykly xD
Aktualny czas: 20-06-25, 22:34 Witaj! Przejdź do zakładki Logowanie lub Rejestracja


Wątek zamknięty 
[VXAce] Game over nie zwykly xD
szevaa Offline
*


Liczba postów: 24
Dołączył: 28-11-13

Pomógł: 3



Post: #1
Game over nie zwykly xD

Chciałbym aby użytkownik miał do wyboru powstanie w miejscu zgonu lub teleport do miasta ze 1 HP ale nie wiem jak tego dokonać pomożecie ?

Może też być bez menu tylko od razu tp do miasta.

A jeżeli by się tak dało to ze po śmierci jest na ekranie czas do respawnu i po ni tp do miasta.

No a jeżeli był by ten respawn uzależniony od levelu (np 10 sekund * level) to byłbym w niebie xD

Z góry dziękuje :) Za pomoc dodam do Crediksow (oczywiście jeśli będzie dana osoba chciała)
04-01-15 02:14
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Ayene Offline
*


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

Pomógł: 112



Post: #2
RE: Game over nie zwykly xD

Gdzieś już chyba było podane rozwiązanie. Przeszukaj forum, ewentualnie starą Ultimę :arrow: http://www.ultimateam.pl/index.php

[Obrazek: aye_furniture_pres.png]
04-01-15 04:56
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Mateusz SSJ8 Offline
*


Liczba postów: 511
Dołączył: 10-05-13

Pomógł: 40



Post: #3
RE: Game over nie zwykly xD

Cytat:1. Chciałbym aby użytkownik miał do wyboru powstanie w miejscu zgonu lub teleport do miasta ze 1 HP ale nie wiem jak tego dokonać pomożecie ?

2. Może też być bez menu tylko od razu tp do miasta.

3. A jeżeli by się tak dało to ze po śmierci jest na ekranie czas do respawnu i po ni tp do miasta.

4. No a jeżeli był by ten respawn uzależniony od levelu (np 10 sekund * level) to byłbym w niebie xD

Z góry dziękuje :) Za pomoc dodam do Crediksow (oczywiście jeśli będzie dana osoba chciała)

1. Jeśli ma być powstanie w miejscu zgonu, to musisz w bazie danych stworzyć przedmiot o nazwie np. "Zmartwychwstanie", użycie którego jest możliwe dopiero, kiedy postać padnie. W przypadku teleportu do miasta poważnie pomyślałbym o umieszczeniu w miastach "pseudo punktów zapisu", po interakcji z którymi gracz nie zostanie teleportowany do lokacji startowej, jeśli już z jakimś wszedł w interakcję. Podobny zabieg był już w grze, którą znajdziesz pod js.x-legend.com.tw , jednak tam za śmierć tracisz 10% drogi do następnego awansu (jeśli z potrzebnego doświadczenie zdobyłeś nie więcej, niż dokładnie 10%, to tracisz całe, jakie zdobyłeś).

2. A gdzie dokładnie ma cię teleportować?

3. Niektórzy gracze nie są zbyt cierpliwi.

4. Po co przedłużać?

Mnie by wystarczyło, gdybyś zagrał we wszystkie te gry:
http://www.mediafire.com/?vwqz1rz3k90a0#700yzz22kjlog
Może w końcu komuś się spodobają.

Nienawidzony i nienawidzący. Przez nienawiść tego drugiego obaj będą martwi.
04-01-15 10:22
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
szevaa Offline
*


Liczba postów: 24
Dołączył: 28-11-13

Pomógł: 3



Post: #4
RE: Game over nie zwykly xD

(04-01-15 04:56)Ayene napisał(a):  Gdzieś już chyba było podane rozwiązanie. Przeszukaj forum, ewentualnie starą Ultimę :arrow: http://www.ultimateam.pl/index.php

szukalem ale znalazlem tylko menu w game over ... zreszta sama zobacz http://forum.ultimateam.pl/Thread-VXAce-...107#pid107

Jezeli bys umial zmienic na sam przycisk respawn ktory po prostu respawnuje do miasta (najlepiej w postaci typowego zdarzenia) to bede wdzieczny :)

Cytat:3. Niektórzy gracze nie są zbyt cierpliwi.

4. Po co przedłużać?

Wydaje mi się że masz racje :)

jednak troche mi nie pasuje twoje rozwiazanie ;/

Cytat:1. Jeśli ma być powstanie w miejscu zgonu, to musisz w bazie danych stworzyć przedmiot o nazwie np. "Zmartwychwstanie", użycie którego jest możliwe dopiero, kiedy postać padnie. W przypadku teleportu do miasta poważnie pomyślałbym o umieszczeniu w miastach "pseudo punktów zapisu", po interakcji z którymi gracz nie zostanie teleportowany do lokacji startowej, jeśli już z jakimś wszedł w interakcję. Podobny zabieg był już w grze, którą znajdziesz pod js.x-legend.com.tw , jednak tam za śmierć tracisz 10% drogi do następnego awansu (jeśli z potrzebnego doświadczenie zdobyłeś nie więcej, niż dokładnie 10%, to tracisz całe, jakie zdobyłeś).

jezeli byscie dali rade zmienic skrypt game ove tak jak napisalem wyzej to bylbym na prawde wdzieczny :)

Pozdrawiam :)
(Ten post był ostatnio modyfikowany: 04-01-15 12:31 przez szevaa.)
04-01-15 11:51
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
szevaa Offline
*


Liczba postów: 24
Dołączył: 28-11-13

Pomógł: 3



Post: #5
RE: Game over nie zwykly xD

:( smuteczeg
04-01-15 16:27
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a):
Ayene Offline
*


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

Pomógł: 112



Post: #6
RE: Game over nie zwykly xD

Sprawdź tę modyfikację skryptu na Game_Over:
#=================================================
# by bStefan aka. regendo
# please give credit if used
# for use with RMVX ACE
#=================================================
# GameOver with choices
#=================================================
# adds four choices to Scene_Gameover:
# : Retry Battle (if you lost the battle)
# : Load Savegame (if there is a savefile)
# : Return to Title
# : Quit Game
#=================================================
# implement over Main
# implement under Multiple_Cols_in_Command_Window
#  if existant
#=================================================

module Regendo
  
  # [ID Mapy, X, Y]
  RESPAWN = [1, 7, 7]
  RESPAWN_TEXT = "Wróć do miasta"
  
  unless @scripts
    @scripts = Hash.new
    def self.contains?(key)
      @scripts[key] == true
    end
  end
  @scripts["GameOver_Window"] = true
  
  module GameOver_Window
    def self.multiple_cols?
          return false unless Regendo::contains?("Horizontal_Command")
          USE_MULTIPLE_COLUMNS
        end
    #=======
    #CONFIG
    #=======
        
        RETRY = true #if false, Retry Battle function will not be aviable
    
    #==============================================
    #requires Horizontal_Command script by regendo
    #==============================================
    if Regendo::contains?("Horizontal_Command")
       USE_MULTIPLE_COLUMNS = true #use Horizontal_Command Script?
        COLUMNS = 2 #requires ^ set to true
    end
    
    #=================================================
    #only used if not using Horizontal_Command Script
    #=================================================
      WINDOW_WIDTH = 225
  end
end

if Regendo::GameOver_Window::multiple_cols?
  class Window_GameOver < Window_HorizontalCommand #more than one column possible
  end
else
  class Window_GameOver < Window_Command #only one column
  end
end

class Window_GameOver
        def initialize
                if Regendo::GameOver_Window::multiple_cols?
          if Regendo::GameOver_Window::COLUMNS
                    super(0, 0, Regendo::GameOver_Window::COLUMNS)
                  else
                    super(0, 0)
                  end
        else
          super(0, 0)
        end
                update_placement
                self.openness = 0
                open
        end
        
  unless Regendo::GameOver_Window::multiple_cols?
    def window_width
        Regendo::GameOver_Window::WINDOW_WIDTH
    end
  end
  
        def update_placement
                self.x = (Graphics.width - width) / 2
                self.y = (Graphics.height - height) / 1.1
        end
        
        #======================================
        # add your own to this list
        # also requires changes at
        # Scene_Gameover#create_command_window
        #======================================
        def make_command_list
                add_command("Powtórz walkę", :tryagain) if SceneManager.scene.is_defeat?
                add_command(Regendo::RESPAWN_TEXT, :respawn)                
                add_command("Wczytaj zapis", :load, load_enabled)
                add_command(Vocab::to_title, :to_title)
                add_command(Vocab::shutdown, :shutdown)
        end
        
        def load_enabled
                DataManager.save_file_exists?
        end
end

class Scene_Gameover < Scene_Base
    attr_reader :command_window
        alias start_old start
        def start
                start_old
                create_command_window
        end
        
        def pre_terminate
                super
                close_command_window
        end
        
        def update
                super
        end
        
        #======================================
        # add your own to this list
        # also requires changes at
        # Window_GameOver#make_command_list
        # and requires adding your own methods
        #======================================
        
        def create_command_window
                @command_window = Window_GameOver.new
                @command_window.set_handler(:tryagain, method(:command_retry)) if is_defeat?
                @command_window.set_handler(:respawn, method(:command_respawn))
                @command_window.set_handler(:load, method(:command_load))
                @command_window.set_handler(:to_title, method(:goto_title))
                @command_window.set_handler(:shutdown, method(:command_shutdown))
        end
        
        def close_command_window
                @command_window.close if @command_window
                update until @command_window.close?
        end
        
        def command_load
                close_command_window
                fadeout_all
                SceneManager.call(Scene_Load)
              end
              
       def command_respawn
                close_command_window
                fadeout_all                
                $game_party.members.each {|actor| actor.recover_all }              
                $game_map.setup(Regendo::RESPAWN[0])
                $game_player.moveto(Regendo::RESPAWN[1], Regendo::RESPAWN[2])
                $game_player.refresh
                $game_map.autoplay
                SceneManager.goto(Scene_Map)
        end
        
        def goto_title
                close_command_window
                fadeout_all
                SceneManager.goto(Scene_Title)
        end
        
        def command_shutdown
                close_command_window
                fadeout_all
                SceneManager.exit
        end
  
  def command_retry
    fadeout_all
    SceneManager.goto(Scene_Battle)
    BattleManager.setup(@troop_id, @can_escape, @can_lose)
    $game_party.members.each do |actor|
      actor.recover_all
    end
    $game_troop.members.each do |enemy|
      enemy.recover_all
    end
    BattleManager.bmgs_by_regendo(@map_bgm, @map_bgs)
    BattleManager.play_battle_bgm
    Sound.play_battle_start
  end
  
  def is_defeat (b = true)
    @defeat = b
  end
  
  def is_defeat?
    Regendo::GameOver_Window::RETRY ? @defeat : false
  end
  
  def battle_setup (troop_id, can_escape = true, can_lose = false)
    @troop_id = troop_id
    @can_escape = can_escape
    @can_lose = can_lose
  end
  
  def bgms_setup(map_bgm, map_bgs)
    @map_bgm = map_bgm
    @map_bgs = map_bgs
  end
end

module BattleManager
  class << self
    alias_method :setup_old, :setup
  end
  def self.setup(troop_id, can_escape = true, can_lose = false)
    self.setup_old(troop_id, can_escape = true, can_lose = false)
    @troop_id = troop_id
  end
  
  def self.bmgs_by_regendo(map_bgm, map_bgs)
    @map_bgm = map_bgm
    @map_bgs = map_bgs
  end
  
  def self.process_defeat
    $game_message.add(sprintf(Vocab::Defeat, $game_party.name))
    wait_for_message
    if @can_lose
      revive_battle_members
      replay_bgm_and_bgs
      SceneManager.return
    else
      SceneManager.goto(Scene_Gameover)
      SceneManager.scene.is_defeat #this is new
      SceneManager.scene.battle_setup(@troop_id, @can_escape, @can_lose) #this also
      SceneManager.scene.bgms_setup(@map_bgm, @map_bgs) #and this
    end
    battle_end(2)
    return true
  end
end

[Obrazek: aye_furniture_pres.png]
04-01-15 17:59
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a): szevaa
szevaa Offline
*


Liczba postów: 24
Dołączył: 28-11-13

Pomógł: 3



Post: #7
RE: Game over nie zwykly xD

O tak właśnie oto mi chodziło :)

Możesz mi tylko napisać jak zmienić to gdzie ma się respawnować ? Wybacz w ruby to jestem zielony :(
05-01-15 03: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: #8
RE: Game over nie zwykly xD

# [ID Mapy, X, Y]
  RESPAWN = [1, 7, 7]
  RESPAWN_TEXT = "Wróć do miasta"
Sam początek, 1 odpowiada za identyfikator mapy zaś dwie siódemki za koordynaty.

Stary nick:ka0909
Pomagam w przerabianiu lekkich skryptów smiles
05-01-15 04:42
Znajdź wszystkie posty użytkownika
"Pomógł" przyznał(a): szevaa
szevaa Offline
*


Liczba postów: 24
Dołączył: 28-11-13

Pomógł: 3



Post: #9
RE: Game over nie zwykly xD

Dzieki :)

a ja szukalem wewnatrz command_respawn

Do zamnkniecia :)
05-01-15 08:32
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.