加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
本帖最后由 天涯孤客 于 2016-1-9 22:34 编辑
如题,希望大大们帮帮忙。在此谢过。
功能就是点开NPC后,诸多设置好的地点名称,点击后,主角传送到该地点。
虽也可以用变量实现,但是选项框只能有4项选择,且排列不好看,体验感不好。
此为XP原脚本:
#============================================================================== # by bbaugle 本脚本来自[url]www.66RPG.com[/url]。使用或转载时请保留此信息。 #============================================================================== class Scene_Fly def initialize(names=nil,place=nil,x=nil,y=nil) @names = names @place = place @x = x @y = y end def main @a = Window_Command.new(240,@names) @a.x = 320 - @a.width / 2 @a.height = 320 @a.y = 240 - @a.height/ 2 @b = Window_Base.new(0, 0, 240, 52) @b.contents = Bitmap.new(240-32, 320-32) @b.y = 10 @b.x = 320 - @a.width/2 @b.contents.draw_text(35, 0, 240, 16, "请选择需要传送的地点") @gold = Window_Base.new(640-128,10,128,48) @gold.contents = Bitmap.new(128,48) gold = $game_party.gold @gold.contents.draw_text(36,0,128,16,gold.to_s) @gold.contents.draw_text(0,0,64,16,"金钱") @gold.opacity = 230 Graphics.transition loop do; Graphics.update Input.update update if $scene != self then; break end end Graphics.freeze @a.dispose @b.dispose @gold.dispose end def update @a.update @b.update @gold.update if Input.trigger?(Input::B) $scene = Scene_Map.new end if Input.trigger?(Input::C) $game_map.setup(@place[@a.index]) $game_player.moveto(@x[@a.index],@y[@a.index]) $game_player.refresh $game_map.autoplay $game_map.update $scene = Scene_Map.new end end end
#==============================================================================
# by bbaugle 本脚本来自[url]www.66RPG.com[/url]。使用或转载时请保留此信息。
#==============================================================================
class Scene_Fly
def initialize(names=nil,place=nil,x=nil,y=nil)
@names = names
@place = place
@x = x
@y = y
end
def main
@a = Window_Command.new(240,@names)
@a.x = 320 - @a.width / 2
@a.height = 320
@a.y = 240 - @a.height/ 2
@b = Window_Base.new(0, 0, 240, 52)
@b.contents = Bitmap.new(240-32, 320-32)
@b.y = 10
@b.x = 320 - @a.width/2
@b.contents.draw_text(35, 0, 240, 16, "请选择需要传送的地点")
@gold = Window_Base.new(640-128,10,128,48)
@gold.contents = Bitmap.new(128,48)
gold = $game_party.gold
@gold.contents.draw_text(36,0,128,16,gold.to_s)
@gold.contents.draw_text(0,0,64,16,"金钱")
@gold.opacity = 230
Graphics.transition
loop do;
Graphics.update
Input.update
update
if $scene != self then;
break
end
end
Graphics.freeze
@a.dispose
@b.dispose
@gold.dispose
end
def update
@a.update
@b.update
@gold.update
if Input.trigger?(Input::B)
$scene = Scene_Map.new
end
if Input.trigger?(Input::C)
$game_map.setup(@place[@a.index])
$game_player.moveto(@x[@a.index],@y[@a.index])
$game_player.refresh
$game_map.autoplay
$game_map.update
$scene = Scene_Map.new
end
end
end
|