Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # =============================================================================
- # TheoAllen - Event Pointers
- # Version : 1.0
- # Contact : www.rpgmakerid.com (or) http://theolized.blogspot.com
- # (This script documentation is written in informal indonesian language)
- # -----------------------------------------------------------------------------
- # Requires :
- # >> Theo - Basic Modules
- # =============================================================================
- ($imported ||= {})[:Theo_EventPointer] = true
- # =============================================================================
- # CHANGE LOGS:
- # -----------------------------------------------------------------------------
- # 2013.06.09 - Finised script
- # =============================================================================
- =begin
- Perkenalan :
- Script ini bisa bikin kamu ngedraw line / panah untuk nunjuk dari event ke
- event lain.
- Cara penggunaan :
- pasang dibawah material namun diatas main
- tulis script call sebagai berikut
- ----------------------------------------------------------------------
- Untuk naruh line :
- - set_arrow(pangkal,ujung)
- - set_line(pangkal,ujung)
- Contoh penerapan :
- - set_arrow($game_map.events[1],$game_map.events[2])
- Ngeset panah dari event id 1 ke event id 2
- ----------------------------------------------------------------------
- - clear_arrow
- - clear_line
- untuk bersihin layar
- 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
- # =============================================================================
- class Game_System
- attr_accessor :arrow_vectors
- attr_accessor :line_vectors
- alias pre_pointer_member_init initialize
- def initialize
- pre_pointer_member_init
- init_pointer_members
- end
- def init_pointer_members
- @arrow_vectors = []
- @line_vectors = []
- end
- end
- class Game_Interpreter
- def set_arrow(pangkal,ujung,color = Color.new(255,255,255))
- vector = VectorObject.new(pangkal,ujung,color)
- vector.offset_y -= 16
- $game_system.arrow_vectors.push(vector)
- end
- def set_line(pangkal,ujung,color = Color.new(255,255,255))
- vector = VectorObject.new(pangkal,ujung,color)
- vector.offset_y -= 16
- $game_system.line_vectors.push(vector)
- end
- def clear_arrow
- $game_system.arrow_vectors = []
- end
- def clear_line
- $game_system.line_vectors = []
- end
- def clear_all
- $game_system.init_pointer_members
- end
- end
- class Sprite_Arrows < Sprite_Screen
- def update
- super
- self.bitmap.clear
- $game_system.arrow_vectors.each do |vector|
- bitmap.draw_arrow(vector.to_v,vector.color)
- end
- end
- end
- class Sprite_Lines < Sprite_Screen
- def update
- super
- self.bitmap.clear
- $game_system.line_vectors.each do |vector|
- bitmap.draw_line(vector.to_v,vector.color)
- end
- end
- end
- class Spriteset_Map
- alias pre_pointer_viewports create_viewports
- def create_viewports
- pre_pointer_viewports
- create_arrow_sprite
- create_line_sprite
- end
- def create_arrow_sprite
- @arrows = Sprite_Arrows.new(@viewport2)
- end
- def create_line_sprite
- @lines = Sprite_Lines.new(@viewport2)
- end
- alias pre_pointers_update update
- def update
- pre_pointers_update
- update_arrow_pointers
- update_line_pointers
- end
- def update_arrow_pointers
- @arrows.update
- end
- def update_line_pointers
- @lines.update
- end
- alias pre_pointers_dispose dispose
- def dispose
- pre_pointers_dispose
- dispose_arrows
- dispose_lines
- end
- def dispose_arrows
- @arrows.dispose
- end
- def dispose_lines
- @lines.dispose
- end
- end
- class Scene_Map < Scene_Base
- alias pointer_post_transfer post_transfer
- def post_transfer
- $game_system.init_pointer_members
- pointer_post_transfer
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment