Quand je teste le jeu mets je veux tester des script pour dual screen que j'ai trouvé sur le net.
#==============================================================================
# ** DS Screens Top
#------------------------------------------------------------------------------
# This holds the backbone of the code for the top screen.
#==============================================================================
class Game_Player < Game_Character
#--------------------------------------------------------------------------
# ● Center coords for the player.
#--------------------------------------------------------------------------
CENTER_X = (320 - 16) * 4 # 画面中央の X 座標 * 4
CENTER_Y = (120 - 16) * 4 # 画面中央の Y 座標 * 4
end
class Spriteset_Map
#--------------------------------------------------------------------------
# ● オブジェクト初期化
#--------------------------------------------------------------------------
def initialize
# ビューポートを作成
@viewport1 = Viewport.new(0, 0, 640, 240)
@viewport2 = Viewport.new(0, 0, 640, 240)
@viewport3 = Viewport.new(0, 0, 640, 240)
@viewport2.z = 200
@viewport3.z = 5000
@viewport4 = Viewport.new(0, 240, 640, 240)
# タイルマップを作成
@tilemap = Tilemap.new(@viewport1)
@tilemap.tileset = RPG::Cache.tileset($game_map.tileset_name)
for i in 0..6
autotile_name = $game_map.autotile_names
@tilemap.autotiles = RPG::Cache.autotile(autotile_name)
end
@tilemap.map_data = $game_map.data
@tilemap.priorities = $game_map.priorities
# パノラマプレーンを作成
@panorama = Plane.new(@viewport1)
@panorama.z = -1000
# フォグプレーンを作成
@fog = Plane.new(@viewport1)
@fog.z = 3000
# キャラクタースプライトを作成
@character_sprites = []
for i in $game_map.events.keys.sort
sprite = Sprite_Character.new(@viewport1, $game_map.events)
@character_sprites.push(sprite)
end
@character_sprites.push(Sprite_Character.new(@viewport1, $game_player))
# 天候を作成
@weather = RPG::Weather.new(@viewport1)
# ピクチャを作成
@picture_sprites = []
for i in 1..50
@picture_sprites.push(Sprite_Picture.new(@viewport2,
$game_screen.pictures))
end
@touchmenu = Window_TouchMenu.new(@viewport4)
# タイマースプライトを作成
@timer_sprite = Sprite_Timer.new
# フレーム更新
update
end
end
class Game_Map
def scroll_down(distance)
@display_y = [@display_y + distance, (self.height - 7) * 128].min
end
def scroll_up(distance)
@display_y = [@display_y - distance, 0].max
end
end
class Window_TouchMenu < Window_Base
def initialize(viewport)
super(0, 240, 640, 240)
self.contents = Bitmap.new(width - 32, height - 32)
refresh
end
def refresh
self.contents.clear
reset_variables
return if !@actor
#draw_actor_hp(actor, x, y)
#draw_actor_sp(actor, x, y)
end
def reset_variables
@actor = $game_party.actors[0]
@old_hp = @actor ? @actor.hp : 0
@old_maxhp = @actor ? @actor.maxhp : 0
@old_sp = @actor ? @actor.sp : 0
@old_maxsp = @actor ? @actor.maxsp : 0
end
def update
super
refresh if (@actor = $game_party.actors[0] or
@old_hp = @actor ? @actor.hp : 0 or
@old_maxhp = @actor ? @actor.maxhp : 0 or
@old_sp = @actor ? @actor.sp : 0 or
@old_maxsp = @actor ? @actor.maxsp : 0)
end
end