|
| 2009-12-14, 04:02 | Enemy Bestiary |
---|
rusted_71 Scripter Karatan
Posts : 392 Thanked : 11 Engine : RMVX Skill : Beginner Type : Scripter
| ENEMY BESTIARY Versi: 1.0 (ga akan di update) Tipe: Add-on Pengenalanperasaan ada yang pernah ngomongin butuh yang kayak ginian di salah satu thread RMID, tapi gw lupa sapa... Fitur
- ya... intinya ada buku yang isinya status2 musuh yang pernah di lawan
Screenshotsga ada kk, ga sempet bikin Sceenie Demoklo demo bisa DL di sini Demonya cuy... tapi gw hilap... yang di demo cuma yang dah jadi... walhasil ga bisa di cek deh scriptnya... tar deh kapan2 gw upload yang mentahannya Scriptsyang mesti dilakukan pertama kali... buka spoiler di bawah ini... copas semua text yang ada di dalamnya... - Spoiler:
- Code:
-
class Scene_Map alias bestiary_battle call_battle def call_battle troop = $data_troops[$game_temp.battle_troop_id].members for i in 0...troop.size unless $pernah_ketemu.include?(troop[i].enemy_id) $pernah_ketemu.push(troop[i].enemy_id) end end bestiary_battle end end class Scene_Title alias bestiary_main main def main $pernah_ketemu = [] bestiary_main end end class Window_Bestiary < Window_Selectable #-------------------------------------------------------------------------- # * Object Initialization #-------------------------------------------------------------------------- def initialize super(0, 64, 640, 416) @column_max = 2 self.index = 0 refresh end #-------------------------------------------------------------------------- # * Get Item #-------------------------------------------------------------------------- def enemy return @data[self.index] end #-------------------------------------------------------------------------- # * Refresh #-------------------------------------------------------------------------- def refresh if self.contents != nil self.contents.dispose self.contents = nil end @ga = [] @data = [] # Add item for i in 1...$data_enemies.size @data.push($data_enemies[i]) end # If item count is not 0, make a bit map and draw all items @item_max = @data.size if @item_max > 0 self.contents = Bitmap.new(width - 32, row_max * 32) for i in 0...@item_max draw_item(i) end end end #-------------------------------------------------------------------------- # * Draw Item # index : item number #-------------------------------------------------------------------------- def draw_item(index) enemy = @data[index] x = 4 + index % 2 * (288 + 32) y = index / 2 * 32 width = self.contents.text_size("88888").width if $pernah_ketemu.include?(enemy.id) self.contents.font.color = normal_color self.contents.draw_text(x + 28, y, 212, 32, enemy.name, 0) self.contents.draw_text(x + 225, y, width, 32, enemy.maxhp.to_s, 2) else @ga.push(enemy.id) self.contents.font.color = disabled_color self.contents.draw_text(x + 28, y, 212, 32, "????", 0) self.contents.draw_text(x + 225, y, width, 32, "????", 2) end bitmap = RPG::Cache.battler(enemy.battler_name, enemy.battler_hue) opacity = self.contents.font.color == normal_color ? 255 : 25 src_rect = bitmap.rect dest_rect = Rect.new(x, y + 3, 24, 24) self.contents.stretch_blt(dest_rect, bitmap, src_rect, opacity) end #-------------------------------------------------------------------------- # * Help Text Update #-------------------------------------------------------------------------- def update_help @help_window.set_text(@ga.include?(self.enemy.id) ? "???????" : self.enemy.name) end end
class Window_EnemyStatus < Window_Base def initialize super(0, 64, 640, 416) self.contents = Bitmap.new(width - 32, height - 32) end def set(enemy) @enemy = enemy refresh end def refresh self.contents.clear bitmap = RPG::Cache.battler(@enemy.battler_name, @enemy.battler_hue) src_rect = bitmap.rect dest_rect = Rect.new(160-(180/2), 240-(224/2), 180, 224) self.contents.stretch_blt(dest_rect, bitmap, src_rect, 255) width = self.contents.text_size("88888").width gold = @enemy.gold.to_s + " " + $data_system.words.gold self.contents.font.color = system_color self.contents.draw_text(32, 48, width, 32, $data_system.words.hp, 0) self.contents.draw_text(32, 80, width, 32, $data_system.words.sp, 0) self.contents.draw_text(150, 48, width, 32, "EXP", 0) self.contents.draw_text(150, 80, width + 16, 32, "Fund", 0) self.contents.draw_text(320, 16, width + 100, 32, "Attributes", 0) self.contents.draw_text(320, 48, width, 32, $data_system.words.str, 0) self.contents.draw_text(320, 80, width, 32, $data_system.words.dex, 0) self.contents.draw_text(320, 112, width, 32, $data_system.words.agi, 0) self.contents.draw_text(320, 144, width, 32, $data_system.words.int, 0) self.contents.draw_text(450, 48, width + 32, 32, $data_system.words.pdef, 0) self.contents.draw_text(450, 80, width + 32, 32, $data_system.words.mdef, 0) self.contents.draw_text(320, 188, width + 100, 32, "Element", 0) self.contents.draw_text(320, 224, width + 100, 32, "Fire", 0) self.contents.draw_text(320, 256, width + 100, 32, "Thunder", 0) self.contents.draw_text(320, 288, width + 100, 32, "Earth", 0) self.contents.draw_text(320, 320, width + 100, 32, "Darkness", 0) self.contents.draw_text(485, 224, width + 100, 32, "Ice", 0) self.contents.draw_text(485, 256, width + 100, 32, "Water", 0) self.contents.draw_text(485, 288, width + 100, 32, "Wind", 0) self.contents.draw_text(485, 320, width + 100, 32, "Light", 0) self.contents.font.color = normal_color self.contents.draw_text(16, 16, 260, 32, @enemy.name.upcase, 1) self.contents.draw_text(80, 48, width, 32, @enemy.maxhp.to_s, 0) self.contents.draw_text(80, 80, width, 32, @enemy.maxsp.to_s, 0) self.contents.draw_text(220, 48, width, 32, @enemy.exp.to_s, 0) self.contents.draw_text(380, 48, width, 32, @enemy.str.to_s, 0) self.contents.draw_text(380, 80, width, 32, @enemy.dex.to_s, 0) self.contents.draw_text(380, 112, width, 32, @enemy.agi.to_s, 0) self.contents.draw_text(380, 144, width, 32, @enemy.int.to_s, 0) self.contents.draw_text(520, 48, width, 32, @enemy.pdef.to_s, 0) self.contents.draw_text(520, 80, width, 32, @enemy.mdef.to_s, 0) self.contents.draw_text(220, 80, width, 32, gold, 0) for i in 1...9 case @enemy.element_ranks[i] when 1 besar = "Double" color = text_color(2) when 2 besar = "Weak" color = text_color(6) when 3 besar = "Normal" color = text_color(7) when 4 besar = "Half" color = text_color(3) when 5 besar = "Immune" color = text_color(4) when 6 besar = "Absorb" color = text_color(1) end case i when 1 fire = besar fire_color = color when 2 ice = besar ice_color = color when 3 thunder = besar thunder_color = color when 4 water = besar water_color = color when 5 earth = besar earth_color = color when 6 wind = besar wind_color = color when 7 light = besar light_color = color when 8 darkness = besar darkness_color = color end end self.contents.font.color = fire_color self.contents.draw_text(410, 224, width + 100, 32, fire, 0) self.contents.font.color = thunder_color self.contents.draw_text(410, 256, width + 100, 32, thunder, 0) self.contents.font.color = earth_color self.contents.draw_text(410, 288, width + 100, 32, earth, 0) self.contents.font.color = darkness_color self.contents.draw_text(410, 320, width + 100, 32, darkness, 0) self.contents.font.color = ice_color self.contents.draw_text(545, 224, width + 100, 32, ice, 0) self.contents.font.color = water_color self.contents.draw_text(545, 256, width + 100, 32, water, 0) self.contents.font.color = wind_color self.contents.draw_text(545, 288, width + 100, 32, wind, 0) self.contents.font.color = light_color self.contents.draw_text(545, 320, width + 100, 32, light, 0) end end class Scene_Bestiary def main make_window Graphics.transition loop do Graphics.update Input.update update if $scene != self break end end # Prepare for transition Graphics.freeze dispose_window end def make_window @enemy_window = Window_Bestiary.new @status_window = Window_EnemyStatus.new @status_window.visible = false @status_window.active = false @help_window = Window_Help.new @enemy_window.help_window = @help_window end def dispose_window @help_window.dispose @enemy_window.dispose @status_window.dispose end def update @help_window.update @enemy_window.update @status_window.update # If item window is active: call update_item if @enemy_window.active update_enemy return end # If target window is active: call update_target if @status_window.active update_status return end end def update_enemy # If B button was pressed if Input.trigger?(Input::B) # Play cancel SE $game_system.se_play($data_system.cancel_se) # Switch to menu screen $scene = Scene_Item.new return end # If C button was pressed if Input.trigger?(Input::C) # If equipment is fixed enemy = @enemy_window.enemy if $pernah_ketemu.include?(enemy.id) $game_system.se_play($data_system.decision_se) @enemy_window.active = false @enemy_window.visible = false @status_window.set(enemy) @status_window.active = true @status_window.visible = true else $game_system.se_play($data_system.buzzer_se) end return end def update_status if Input.trigger?(Input::B) $game_system.se_play($data_system.cancel_se) @enemy_window.active = true @enemy_window.visible = true @status_window.active = false @status_window.visible = false return end if Input.trigger?(Input::C) $game_system.se_play($data_system.cancel_se) @enemy_window.active = true @enemy_window.visible = true @status_window.active = false @status_window.visible = false return end end end end
bis di copas... paste di tempat script... kayak biasa... di atas main... di bawah default script... bis tuh bikin common even... pilih script trus ketik $scene = Scene_Bestiary.new setelah selesai... bikin itemnya trus call common even yang tadi... dah itu... ya udah lah... selesai kok Credits
- makasih buat enterbrain buat script2 defaultnya... gw cuma ambil dari script itu... trus di ubah banyak
- klo ada yang mo kasih credit, ya tulis aja nama gw... tapi klo ga ya ga masalah...
- terakhir tapi penting juga... kasih comment ya... script gw yang terakhir ga ada yang kkasih comment soalnya... jadi sedih deh... T_T
Terakhir diubah oleh rusted_71 tanggal 2009-12-16, 19:37, total 1 kali diubah (Reason for editing : masukin script ke kode, biar jadi lebih gampang dibaca) |
| | | 2009-12-14, 10:36 | Re: Enemy Bestiary |
---|
Notorius Veteran
Posts : 1408 Thanked : 0 Engine : RMVX Skill : Intermediate Type : Event Designer
| Ini juga keren! Numpang dibaca om... |
| | | 2009-12-14, 14:31 | Re: Enemy Bestiary |
---|
gale-jay Newbie
Posts : 81 Thanked : 0 Engine : RMVX
| udah disedot kk, tp dicobainnya entar soalnya lagi di warnet.. - Quote :
- kasih comment ya... script gw yang terakhir ga ada yang kkasih comment soalnya... jadi sedih deh... T_T
bingung gtw musti komen apa, mungkin ga ada komentar soalnya udah sempurna.. hebat kk, ntar ajarain ya!! |
| | | 2010-05-02, 22:21 | Re: Enemy Bestiary |
---|
Gary PoL Newbie
Posts : 81 Thanked : 2 Engine : RMVX Skill : Very Beginner Type : Jack of All Trades
Awards:
| Whess...!!! Klo Game Buatan Gue Pake Ini Pasti Bakal Jd Kerenzz....!!! Makasih Atas Informasi nya yah...!!! |
| | | 2010-05-02, 22:28 | Re: Enemy Bestiary |
---|
Yaden Legendary
Posts : 2056 Thanked : 17 Engine : RMVX Skill : Very Beginner Type : Artist
| @eashule: maaf, seperti yang sudah diingatkan oleh para moderator (orang yang berusername warna biru) baca dulu boardrules forum ini.. karena anda telah melakukan satu kesalahan yaitu necropost (membangkitkan thread yang sudah mati/lewat3 bulan) dan jika masih dilakukan, anda bisa dihukum oleh moderator dan admin di sini lhoo.. |
| | | 2011-01-30, 17:42 | Re: Enemy Bestiary |
---|
junogan Newbie
Posts : 37 Thanked : 0 Engine : RMVX Skill : Beginner Type : Scripter
| ui gann.... klo d XAS ad gax yahh... ?? soalnya ku coba pke yg agan tuhh g bsa d XAS gw...... |
| | | 2011-01-30, 17:46 | Re: Enemy Bestiary |
---|
bungatepijalan Moe Princess
Posts : 1487 Thanked : 30 Engine : Multi-Engine User Skill : Intermediate Type : Developer
Awards:
| @^ Wah, necropost nih, ini uda berumur >3 bulan.. Baca dulu Board Rulesnya yah.. |
| | | | Re: Enemy Bestiary |
---|
Sponsored content
| | | | Similar topics | |
|
Similar topics | |
| |
Halaman 1 dari 1 | |
| Permissions in this forum: | Anda tidak dapat menjawab topik
| |
| |
Latest 10 Topics | [Web Novel] Gloria Infidelis 2016-11-17, 21:27 by LightNightKnight
[Announcement] Forum baru untuk RMID 2016-08-25, 16:39 by TheoAllen
Where I'm Wrong ? 2016-07-24, 16:10 by ReydVires
flakeheartnet's Resources part III 2016-07-08, 14:30 by flakeheartnet
Keira's Art Warehouse 2016-06-28, 19:27 by KeiraBlaze
Theo Core Time System + Bingung 2016-06-27, 16:24 by Lockin
Error Script, Maybe ? 2016-06-27, 16:20 by Lockin
Nusaimoe @ RMID Lounge 2016-06-21, 05:02 by Jihad Bagas
Call Random Battle 2016-06-15, 17:04 by Lockin
Flakeheartnet Resources Part II [come back gift] 2016-06-07, 15:51 by flakeheartnet
|
Statistics
|
Members: [ 4947 ]
Topics: [ 8258 ]
Posts: [ 112606 ]
Newest member: [ https://rmid.forumotion.net/u4968 ]
|
|
|
|
|