Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # =============================================================================
- # TheoAllen - Enemy Attack SE (RGSS2)
- # Version : 1.0
- # Contact : www.rpgmakerid.com (or) http://theolized.blogspot.com
- # (This script documentation is written in informal indonesian language)
- # =============================================================================
- ($imported ||= {})[:Theo_EnemySE] = true
- # =============================================================================
- # CHANGE LOGS:
- # -----------------------------------------------------------------------------
- # 2013.05.18 - Started and Finished script
- # =============================================================================
- =begin
- Perkenalan :
- Script ini ngebikin kamu bisa ngespesifikasi suara attack SE untuk setiap
- enemy.
- Cara penggunaan :
- Pasang diatas main, tapi dibawah material. Untuk tujuan kompatibilitas,
- pasang diatas semua custom script.
- Gunakan tag seperti berikut pada note enemy
- <se name: n> = untuk spesifikasi nama SE
- <se vol: n> = untuk spesifikasi volume SE
- <se pitch: n> = untuk spesifikasi pitch SE
- Secara default, name, vol, dan pitch settingannya sama seperti dalam database
- system. kamu tidak harus menulis semua tag. Jika kamu hanya mau mengganti
- SEnya saja, cukup gunain tag <se name: n>
- Terms of Use:
- Credit gw, TheoAllen. Kalo semisal u bisa ngedit2 script gw trus jadi lebih
- keren, terserah. Ane bebasin. Asal ngga ngeklaim aja. Kalo semisal mau
- dipake buat komersil, jangan lupa, gw dibagi gratisannya.
- =end
- # =============================================================================
- # Tidak ada konfigurasi khusus. Dan jangan diedit setelah line ini
- # =============================================================================
- module THEO
- module ENEMY
- module REGEXP
- SE_NAME = /<(?:SE_NAME|se name):[ ](.*)>/i
- SE_VOL = /<(?:SE_VOL|se vol):[ ](\d+)>/i
- SE_PIT = /<(?:SE_PITCH|se pitch):[ ](\d+)>/i
- end
- end
- end
- class RPG::Enemy
- attr_accessor :se_name
- attr_accessor :se_vol
- attr_accessor :se_pit
- def load_se
- @se_name = $data_system.sounds[9].name
- @se_vol = $data_system.sounds[9].volume
- @se_pit = $data_system.sounds[9].pitch
- self.note.split(/[\r\n]+/).each do |line|
- case line
- when THEO::ENEMY::REGEXP::SE_NAME
- @se_name = $1.to_s
- when THEO::ENEMY::REGEXP::SE_VOL
- @se_vol = $1.to_i
- when THEO::ENEMY::REGEXP::SE_PIT
- @se_pit = $1.to_i
- end
- end
- end
- end
- class Scene_Title < Scene_Base
- alias pre_enemy_se_db load_database
- def load_database
- pre_enemy_se_db
- load_enemy_se
- end
- alias pre_enemy_bt_se_db load_bt_database
- def load_bt_database
- pre_enemy_bt_se_db
- load_enemy_se
- end
- def load_enemy_se
- $data_enemies.compact.each do |e|
- e.load_se
- end
- end
- end
- class Scene_Battle < Scene_Base
- def display_attack_animation(targets)
- if @active_battler.is_a?(Game_Enemy)
- enemy = $data_enemies[@active_battler.enemy_id]
- path = sprintf("Audio/SE/%s",enemy.se_name)
- vol = enemy.se_vol
- pit = enemy.se_pit
- Audio.se_play(path,vol,pit)
- wait(15, true)
- else
- aid1 = @active_battler.atk_animation_id
- aid2 = @active_battler.atk_animation_id2
- display_normal_animation(targets, aid1, false)
- display_normal_animation(targets, aid2, true)
- end
- wait_for_animation
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement