Ogłoszenie 

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


Administracja Forum


Poprzedni temat «» Następny temat
Stylowa śmierć by Shanghai
Autor Wiadomość
Eleanor 




Ranga RM:
1 gra

Pomogła: 13 razy
Dołączyła: 15 Lut 2011
Posty: 73
Skąd: Kraków
  Wysłany: Sob 12 Mar, 2011 21:00
Stylowa śmierć by Shanghai
Stylowa śmierć

By Shanghai
Sprawia, że przeciwnicy mogą umrzeć w fajny sposób - przetłumaczone przez mnie.

Spoiler:



Działa z normalnym systemem walk, Battle Engine Melody i Tankentai.


Jak używać
Wchodzimy w zakładkę przeciwnicy, w notatce wpisujemy:
Kod:
<fancy death: string>

String zamieniamy na
Kod:
fire
ice
elec
water
stone
wind
holy
dark

w zależności od tego, w jaki sposób chcemy by wyglądała śmierć przeciwnika.

SKRYPT


Spoiler:

Kod:
#===============================================================================
#
# Shanghai Simple Script - Fancy Deaths
# Last Date Updated: 2010.05.09
# Trudność: Normalny
#
# Sprawia, że przeciwnicy umierają w ciekawy sposób jeśli w notatcer mają
# przypisany <fancy death: string>. Script został stworzony dla standardowych
# animacji, jednakowoż możesz zmienić ID dla nich.
# Działa z normalnym systemem walk, Battle Engine Melody i Tankentai.
#===============================================================================
# Instrukcje
# -----------------------------------------------------------------------------
# Aby zainstalować ten skrypt, otwórz ruby i wklej ten skrypt
# do wolnej linijki &#9660; Materiały ale &#9660; Main. Pamiętaj o zapisaniu.
#
# <fancy death: string>
# Zmień string na jedno z tych:
# fire  - przeciwnik umiera w ogniu.
# ice   - przeciwnik zamarza i umiera.
# elec  - przeciwnik umiera w elektryczny sposób.
# water - przeciwnik rozpływa się i umiera.
# stone - przeciwnik zamienia się w kamień i umiera..
# wind  - przeciwnik rozplywa się na wietrze umierając.
# holy  - przeciwnik znika w świetle.
# dark  - przeciwnik znika w ciemności.
#===============================================================================
#
# NIE EDYTUJ PONIŻEJ CHYBA, ŻE WIESZ CO ROBISZ!
#
$imported = {} if $imported == nil
$imported["FancyDeaths"] = true
 
module SSS
  # Fiery death animation IDs.
  FIERY_DEATH_ANI1 = 2
  FIERY_DEATH_ANI2 = 79
  # Icy death animation IDs.
  ICY_DEATH_ANI1 = 62
  ICY_DEATH_ANI2 = 3
  # Electric death animation IDs.
  ELECTRIC_DEATH_ANI1 = 18
  ELECTRIC_DEATH_ANI2 = 4
  # Watery death animation ID.
  WATERY_DEATH_ANI = 69
  # Stone death animation ID.
  STONE_DEATH_ANI = 40
  # Wind death animation ID.
  WINDY_DEATH_ANI1 = 73
  WINDY_DEATH_ANI2 = 31
  # Holy death animation ID.
  HOLY_DEATH_ANI1 = 42
  HOLY_DEATH_ANI2 = 75
  # Dark death animation ID.
  DARK_DEATH_ANI1 = 77
  DARK_DEATH_ANI2 = 51
end
 
#==============================================================================
# RPG::Enemy
#==============================================================================
 
class RPG::Enemy
  #--------------------------------------------------------------------------
  # fancy death
  #--------------------------------------------------------------------------
  def fancy_death
    return @fancy_death if @fancy_death != nil
    @fancy_death = 0
    self.note.split(/[\r\n]+/).each { |line|
      case line
      when /<(?:FANCY_DEATH|fancy death):[ ](.*)>/i
        case $1.upcase
        when "FIRE"
          @fancy_death = 1
        when "ICE"
          @fancy_death = 2
        when "ELEC"
          @fancy_death = 3
        when "WATER"
          @fancy_death = 4
        when "STONE"
          @fancy_death = 5
        when "WIND"
          @fancy_death = 6
        when "HOLY"
          @fancy_death = 7
        when "DARK"
          @fancy_death = 8
        end
      end
    }
    return @fancy_death
  end
end
 
#==============================================================================
# ** Sprite_Battler
#==============================================================================
 
class Sprite_Battler < Sprite_Base
  #--------------------------------------------------------------------------
  # * Public Instance Variables
  #--------------------------------------------------------------------------
  attr_accessor :effect_duration
  #--------------------------------------------------------------------------
  # * Set New Effect
  #--------------------------------------------------------------------------
  alias setup_new_effect_sss_fancy_deaths setup_new_effect unless $@
  def setup_new_effect
    if @battler.collapse and @battler.is_a?(Game_Enemy)
      if @battler.enemy.fancy_death > 0
        @battler.collapse = false
        @battler_visible = false
        case @battler.enemy.fancy_death
        when 1 # Fiery Death
          @effect_type = 574897410001
          @effect_duration = 169
          return
        when 2 # Icy Death
          @effect_type = 574897410002
          @effect_duration = 125
          return
        when 3 # Electric Death
          @effect_type = 574897410003
          @effect_duration = 97
          return
        when 4 # Watery Death
          @effect_type = 574897410004
          @effect_duration = 101
          return
        when 5 # Stone Death
          @effect_type = 574897410005
          @effect_duration = 81
          return
        when 6 # Windy Death
          @effect_type = 574897410006
          @effect_duration = 91
          return
        when 7 # Holy Death
          @effect_type = 574897410007
          @effect_duration = 106
          return
        when 8 # Dark Death
          @effect_type = 574897410008
          @effect_duration = 91
          return
        end
      end
    end
    setup_new_effect_sss_fancy_deaths
  end
  #--------------------------------------------------------------------------
  # * Update Effect
  #--------------------------------------------------------------------------
  alias update_effect_sss_fancy_deaths update_effect unless $@
  def update_effect
    if @effect_duration > 0
      case @effect_type
      when 574897410001
        update_fiery_death
        return
      when 574897410002
        update_icy_death
        return
      when 574897410003
        update_electric_death
        return
      when 574897410004
        update_watery_death
        return
      when 574897410005
        update_stone_death
        return
      when 574897410006
        update_windy_death
        return
      when 574897410007
        update_holy_death
        return
      when 574897410008
        update_dark_death
        return
      end
    end
    update_effect_sss_fancy_deaths
  end
  #--------------------------------------------------------------------------
  # * Start Death Animation
  #--------------------------------------------------------------------------
  def start_death_animation(animation, mirror)
    if $imported["BattleEngineMelody"]
      start_sub_animation(animation, mirror)
    else
      start_animation(animation, mirror)
    end
  end
  #--------------------------------------------------------------------------
  # * Update Fiery Death
  #--------------------------------------------------------------------------
  def update_fiery_death
    @effect_duration -= 1
    self.blend_type = 1
    case @effect_duration
    when 168, 138, 108, 78
      self.color.set(255, 128, 128, 128)
      start_death_animation($data_animations[SSS::FIERY_DEATH_ANI1], false)
    when 48
      start_death_animation($data_animations[SSS::FIERY_DEATH_ANI2], false)
    when 0..47
      self.opacity = 256 - (48 - @effect_duration) * 6
    end
  end
  #--------------------------------------------------------------------------
  # * Update Icy Death
  #--------------------------------------------------------------------------
  def update_icy_death
    @effect_duration -= 1
    self.blend_type = 1
    case @effect_duration
    when 124
      self.color.set(128, 128, 255, 128)
      start_death_animation($data_animations[SSS::ICY_DEATH_ANI1], false)
    when 48
      start_death_animation($data_animations[SSS::ICY_DEATH_ANI2], false)
    when 0..47
      self.opacity = 256 - (48 - @effect_duration) * 6
    end
  end
  #--------------------------------------------------------------------------
  # * Update Electric Death
  #--------------------------------------------------------------------------
  def update_electric_death
    @effect_duration -= 1
    self.blend_type = 1
    case @effect_duration
    when 96
      self.color.set(255, 255, 128, 128)
      start_death_animation($data_animations[SSS::ELECTRIC_DEATH_ANI1], false)
    when 48
      start_death_animation($data_animations[SSS::ELECTRIC_DEATH_ANI2], false)
    when 0..47
      self.opacity = 256 - (48 - @effect_duration) * 6
    end
  end
  #--------------------------------------------------------------------------
  # * Update Watery Death
  #--------------------------------------------------------------------------
  def update_watery_death
    @effect_duration -= 1
    self.blend_type = 1
    case @effect_duration
    when 100
      self.color.set(64, 64, 255, 128)
      self.wave_amp = 10
      self.wave_speed = 3600
    when 61..99
      self.wave_speed += 100
    when 60
      start_death_animation($data_animations[SSS::WATERY_DEATH_ANI], false)
    when 0..47
      self.opacity = 256 - (48 - @effect_duration) * 6
    end
  end
  #--------------------------------------------------------------------------
  # * Update Stone Death
  #--------------------------------------------------------------------------
  def update_stone_death
    @effect_duration -= 1
    case @effect_duration
    when 80
      start_death_animation($data_animations[SSS::STONE_DEATH_ANI], false)
    when 0..79
      opacity = [(80 - @effect_duration) * 4, 200].min
      self.color.set(200, 200, 200, opacity)
    end
  end
  #--------------------------------------------------------------------------
  # * Update Windy Death
  #--------------------------------------------------------------------------
  def update_windy_death
    @effect_duration -= 1
    self.blend_type = 1
    case @effect_duration
    when 90
      self.color.set(128, 255, 128, 128)
      start_death_animation($data_animations[SSS::WINDY_DEATH_ANI1], false)
    when 45
      start_death_animation($data_animations[SSS::WINDY_DEATH_ANI2], false)
      self.visible = false
    when 0
      self.opacity = 0
      self.visible = true
    end
  end
  #--------------------------------------------------------------------------
  # * Update Holy Death
  #--------------------------------------------------------------------------
  def update_holy_death
    @effect_duration -= 1
    self.blend_type = 1
    case @effect_duration
    when 105
      self.color.set(255, 255, 255, 128)
      start_death_animation($data_animations[SSS::HOLY_DEATH_ANI1], false)
    when 45
      start_death_animation($data_animations[SSS::HOLY_DEATH_ANI2], false)
    when 0..44
      self.opacity = 256 - (48 - @effect_duration) * 6
    end
  end
  #--------------------------------------------------------------------------
  # * Update Dark Death
  #--------------------------------------------------------------------------
  def update_dark_death
    @effect_duration -= 1
    self.blend_type = 1
    case @effect_duration
    when 90
      self.color.set(0, 0, 0, 128)
      start_death_animation($data_animations[SSS::DARK_DEATH_ANI1], false)
    when 60
      self.visible = false
    when 45
      start_death_animation($data_animations[SSS::DARK_DEATH_ANI2], false)
    when 0
      self.opacity = 0
      self.visible = true
    end
  end
end
 
#==============================================================================
# ** Spriteset_Battle
#==============================================================================
 
class Spriteset_Battle
  #--------------------------------------------------------------------------
  # * Public Instance Variables
  #--------------------------------------------------------------------------
  attr_accessor :enemy_sprites
end
 
#==============================================================================
# ** Scene_Battle
#==============================================================================
 
class Scene_Battle < Scene_Base
  #--------------------------------------------------------------------------
  # * wait_for_deaths
  #--------------------------------------------------------------------------
  def wait_for_deaths
    update_basic
    loop do
      amount = 0
      for sprite in @spriteset.enemy_sprites
        amount += 1 if sprite.effect_duration <= 0
      end
      break if amount >= @spriteset.enemy_sprites.size
      update_basic
    end
  end
  #--------------------------------------------------------------------------
  # * Process Victory
  #--------------------------------------------------------------------------
  alias process_victory_sss_fancy_deaths process_victory unless $@
  def process_victory
    if $imported["BattleEngineMelody"]
      @judge_win_loss = true
      pause_atb(true, true)
      @enemy_gauge_window.dispose if @enemy_gauge_window != nil
      @hide_battlecursor = true
      @party_input_flag = true
      @message_window.visible = true
    end
    wait_for_deaths
    process_victory_sss_fancy_deaths
  end
end
 
#===============================================================================
#
# KONIEC
#
#===============================================================================

________________________


 
 
 
pokecath 




Preferowany:
RPG Maker VX

Pomógł: 6 razy
Dołączył: 07 Mar 2011
Posty: 103
Wysłany: Wto 22 Mar, 2011 07:56
Fajny skrypt a znalazlbys takie coś do systemu walki w czasie rzeczywistym ?
________________________
Nazwa:Ostatni Czarny Mag : Pradawna Kopalnia
Fabuła:70%
Questy:0%
Mapy:0,99%
Itemy:0,6%
Skrypty:100%
Muzyka:30%
Reszta:0,04
Ogólnie mało.
 
 
Eleanor 




Ranga RM:
1 gra

Pomogła: 13 razy
Dołączyła: 15 Lut 2011
Posty: 73
Skąd: Kraków
Wysłany: Sob 30 Kwi, 2011 17:38
Możesz dać po prostu animację jaką chcesz w drugiej karcie zdarzenia, inaczej się nie da.

PS: jestem dziewczyną.
________________________


 
 
 
pokecath 




Preferowany:
RPG Maker VX

Pomógł: 6 razy
Dołączył: 07 Mar 2011
Posty: 103
Wysłany: Nie 01 Maj, 2011 07:46
Nie pomyślałem o tym żeby dać animacje w drugiej karcie . Dzięki .:-)
________________________
Nazwa:Ostatni Czarny Mag : Pradawna Kopalnia
Fabuła:70%
Questy:0%
Mapy:0,99%
Itemy:0,6%
Skrypty:100%
Muzyka:30%
Reszta:0,04
Ogólnie mało.
 
 
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
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