2.81 MB, 下载次数: 40
·脚本:@wait ||= 0; @wait = 30 + rand(30) if @wait < 0 ·脚本:@a = rand(2) if @wait <= 1 ·脚本:move_toward_player if @a == 0 ·脚本:move_toward_event(2P玩家操作的事件ID) if @a == 1 ·脚本:@wait -= 1
错误提示.PNG (5.56 KB, 下载次数: 21)
图片.PNG (168.88 KB, 下载次数: 22)
def abs(x) if x < 0 return -x else return x end end ITEM_MAX = 255 class Game_Party < Game_Unit;def max_item_number(item);return ITEM_MAX;end;end class Game_Event < Game_Character def near_the_screen?(dx = 24, dy = 16) ax = $game_map.adjust_x(@real_x) - Graphics.width / 2 / 32 ay = $game_map.adjust_y(@real_y) - Graphics.height / 2 / 32 ax >= -dx && ax <= dx && ay >= -dy && ay <= dy end end def attack_start common_event = $data_common_events[$game_variables[21] + 80] if common_event child = Game_Interpreter.new(@depth + 1) child.setup(common_event.list, same_map? ? @event_id : 0) child.run end end def setup_weapon common_event = $data_common_events[$game_variables[21] + 60] if common_event child = Game_Interpreter.new(@depth + 1) child.setup(common_event.list, same_map? ? @event_id : 0) child.run end end class Sprite_Base def set_animation_rate @ani_rate = 2 end end
SiWangQi 发表于 2015-11-28 16:46
可不可以用下面的代码里的:move_toward_character($game_map.events[7])
命令呢?好像意思是跟踪事件7的 ...
=begin ======================================== マップイベントを呼び出すスクリプトです。 イベントコマンドのスクリプトから実行します。 本スクリプトはRGSS3専用です。 ●使い方 マップイベントID:4、ページ3を呼び出したい。 call_map_event(4,3) イベントページ無指定でマップイベント5を呼び出したい。 start_map_event(5) このように変数で指定することも可能です。 call_map_event($game_variables[1],$game_variables[2]) ●ページ指定でマップイベントを呼び出す。 call_map_event(id,page) 起動後の@event_idは指定先のイベントIDに依存します。 ●ページ無指定でマップイベントを呼び出す。 start_map_event(id) 起動後の@event_idは指定先のイベントIDに依存します。 ●ページ指定でマップイベントを呼び出す。 call_map_event_carried_id(id,page) 起動後の@event_idは指定元のイベントIDに依存します。 但し、指定元の@event_idが0の場合はイベントは実行されません。 ●ページ無指定でマップイベントを呼び出す。 start_map_event_carried_id(id) 起動後の@event_idは指定元のイベントIDに依存します。 但し、指定元の@event_idが0の場合はイベントは実行されません。 ●他マップのイベントをページ指定で呼び出す。 call_other_map_event(map_id,event_id,page) 他マップのイベントをページ指定で呼び出します。 ======================================== =end #============================================================================== # ■ Vocab #------------------------------------------------------------------------------ # 用語とメッセージを定義するモジュールです。定数でメッセージなどを直接定義す # るほか、グローバル変数 $data_system から用語データを取得します。 #============================================================================== module Vocab EventOverflow = "マップイベントまたはコモンイベントの呼び出しが上限を超えました。" end #============================================================================== # ■ Game_Interpreter #------------------------------------------------------------------------------ # イベントコマンドを実行するインタプリタです。このクラスは Game_Map クラス、 # Game_Troop クラス、Game_Event クラスの内部で使用されます。 #============================================================================== class Game_Interpreter #-------------------------------------------------------------------------- #☆カスタム #-------------------------------------------------------------------------- #-------------------------------------------------------------------------- # ● IDからイベントをページ指定で起動 # id : 起動するイベントのID # page : 起動するイベントのページ #-------------------------------------------------------------------------- def call_map_event(id,page) event = $game_map.events[id] @child = Game_Interpreter.new(@depth+1) @child.setup(event.instance_variable_get(:@event).pages[page-1].list,id) @child.run end #-------------------------------------------------------------------------- # ● IDからイベントを起動 # id : 起動するイベントのID #-------------------------------------------------------------------------- def start_map_event(id) event = $game_map.events[id] @child = Game_Interpreter.new(@depth + 1) @child.setup(event.list, id) @child.run end #-------------------------------------------------------------------------- # ● IDからイベントをページ指定で起動(イベントIDは引き継ぎ) # id : 起動するイベントのID # page : 起動するイベントのページ #-------------------------------------------------------------------------- def call_map_event_carried_id(id,page) event = $game_map.events[id] @child = Game_Interpreter.new(@depth+1) @child.setup(event.instance_variable_get(:@event).pages[page-1].list,@event_id) @child.run end #-------------------------------------------------------------------------- # ● IDからイベントを起動(イベントIDは引き継ぎ) # id : 起動するイベントのID #-------------------------------------------------------------------------- def start_map_event_carried_id(id) event = $game_map.events[id] @child = Game_Interpreter.new(@depth + 1) @child.setup(event.list, @event_id) @child.run end #-------------------------------------------------------------------------- # ● 別マップのマップイベントを呼び出す。(IDは引き継ぎ。) # map_id : 起動するイベントがあるマップのID # event_id : 起動するイベントID # page : 起動するイベントのページ #-------------------------------------------------------------------------- def call_other_map_event(map_id,event_id,page) if @map_id != map_id event = load_data(sprintf("Data/Map%03d.rvdata2", map_id)).events[event_id] event = Game_Event.new(map_id, event) else event = $game_map.events[id] end @child = Game_Interpreter.new(@depth+1) @child.setup(event.instance_variable_get(:@event).pages[page-1].list,@event_id) @child.run end end
欢迎光临 Project1 (https://rpg.blue/) | Powered by Discuz! X3.1 |