Project1
标题:
VA怎么用图片做地图?
[打印本页]
作者:
蕉皮
时间:
2012-4-26 10:47
标题:
VA怎么用图片做地图?
一块一块画有点麻烦.网上有些图片本来就是地图而且很精致.导入到图块里面就有尺寸限制和某格不显示问题.工程量也大.
怎么用一张图片在上面设置通行?
还有就是图片大就会卡怎么解决?
作者:
rpgxs
时间:
2012-4-26 11:08
如果是那种类似梦幻西游那种地图,一般是远景制作,然后新建1个通行图块做通行设置。(具体可看
这里!
)
如果觉得卡,可以把地图稍微缩小或者切块,(比如原本1000X1000,切成500X500,然后在连接的地方设置成无渐变转移)(或者脚本优化?)
作者:
Luciffer
时间:
2012-4-26 11:26
远景或者干脆用双远景脚本,然后用一块可通行一块不可通行的图块设定移动范围,记住,要透明的。。。
作者:
kfflX
时间:
2012-4-26 16:53
阁下可以
先用PS改图
,将图片设置成远景,再做一个全透明的图块,设置通行。
作者:
hcm
时间:
2012-4-27 12:47
这样看看,
一个图块固定大小 32×32 像素,你可以根据你画的地图大小的纵横图块数量来计算出地图是??*??像素的(乘法计算不解释)
然后在PS把你要用的远景图大小调到适合的像素比(图像——画布大小/图像大小),要剪裁还是变形随便。
大小适合后再放到远景图(注意不要有显示出的不透明图块)。接下来和板凳的一样:
远景或者干脆用双远景脚本,然后用一块可通行一块不可通行的图块设定移动范围,记住,要透明的。。
‘‘──hcm于2012-4-27 13:23补充以下内容
一部分没有的情况我倒是没遇到过,但忽快忽慢是流畅性的问题吗?
我做游戏时也出现过类似问题,于是加了以下脚本就没事了(但运行游戏时笔记本就超容易发热?!不知和什么有关),试试看吗?
#==============================================================================
# ■ VXAce_SP1
#------------------------------------------------------------------------------
# プリセットスクリプトの不具合を修正します。ユーザー定義のスクリプト素材は、
# 原則としてこのセクションより下に配置してください。
#==============================================================================
#------------------------------------------------------------------------------
# 【修正内容】
#------------------------------------------------------------------------------
# ●イベントコマンド[ステートの変更]にて、同じステートの付加と解除を同時に実
# 行した際、二回目以降の付加が失敗する不具合を修正しました。
# ●イベントコマンド[アニメーションの表示]にて、表示中のアニメーションがマッ
# プのスクロールに同期しない不具合を修正しました。
# ●自動戦闘の行動が正常に選択されない不具合を修正しました。
# ●装備できなくなった装備品が外れたことにより、さらに別の装備品が装備できなく
# なったとき、その装備品が増殖してしまう不具合を修正しました。
# ●イベントコマンド[ピクチャの消去]を実行した後に余分な負荷がかかる不具合を
# 修正しました。
# ●移動ルートのオプション[移動できない場合は飛ばす]にチェックを入れた状態で
# トリガー[プレイヤーから接触]のイベントに接触すると、イベントが実行中であ
# っても起動予約がされてしまう不具合を修正しました。
# ●魔法反射されたスキルに対してステート有効度が反映されない不具合を修正しまし
# た。
# ●フォントのデフォルト設定にて太字または斜体を有効にしていても、ステータス画
# 面を切り替えたとき等に無効な状態に戻ってしまう不具合を修正しました。
#------------------------------------------------------------------------------
class Game_Battler
attr_accessor :magic_reflection
#--------------------------------------------------------------------------
# ● 敵対関係の判定
#--------------------------------------------------------------------------
alias vxace_sp1_opposite? opposite?
def opposite?(battler)
vxace_sp1_opposite?(battler) || battler.magic_reflection
end
end
#------------------------------------------------------------------------------
class Game_Actor
#--------------------------------------------------------------------------
# ● 装備できない装備品を外す
# item_gain : 外した装備品をパーティに戻す
#--------------------------------------------------------------------------
alias vxace_sp1_release_unequippable_items release_unequippable_items
def release_unequippable_items(item_gain = true)
loop do
last_equips = equips.dup
vxace_sp1_release_unequippable_items(item_gain)
return if equips == last_equips
end
end
#--------------------------------------------------------------------------
# ● 自動戦闘時の戦闘行動を作成
#--------------------------------------------------------------------------
def make_auto_battle_actions
@actions.size.times do |i|
@actions[i] = make_action_list.max_by {|action| action.value }
end
end
end
#------------------------------------------------------------------------------
class Game_Player
#--------------------------------------------------------------------------
# ● マップイベントの起動
# triggers : トリガーの配列
# normal : プライオリティ[通常キャラと同じ]かそれ以外か
#--------------------------------------------------------------------------
alias vxace_sp1_start_map_event start_map_event
def start_map_event(x, y, triggers, normal)
return if $game_map.interpreter.running?
vxace_sp1_start_map_event(x, y, triggers, normal)
end
end
#------------------------------------------------------------------------------
class Game_Picture
#--------------------------------------------------------------------------
# ● ピクチャの消去
#--------------------------------------------------------------------------
alias vxace_sp1_erase erase
def erase
vxace_sp1_erase
@origin = 0
end
end
#------------------------------------------------------------------------------
class Game_Interpreter
#--------------------------------------------------------------------------
# ● ステートの変更
#--------------------------------------------------------------------------
alias vxace_sp1_command_313 command_313
def command_313
vxace_sp1_command_313
$game_party.clear_results
end
end
#------------------------------------------------------------------------------
class Sprite_Character
#--------------------------------------------------------------------------
# ● 位置の更新
#--------------------------------------------------------------------------
alias vxace_sp1_update_position update_position
def update_position
move_animation(@character.screen_x - x, @character.screen_y - y)
vxace_sp1_update_position
end
#--------------------------------------------------------------------------
# ● アニメーションの移動
#--------------------------------------------------------------------------
def move_animation(dx, dy)
if @animation && @animation.position != 3
@ani_ox += dx
@ani_oy += dy
@ani_sprites.each do |sprite|
sprite.x += dx
sprite.y += dy
end
end
end
end
#------------------------------------------------------------------------------
class Sprite_Picture
#--------------------------------------------------------------------------
# ● 転送元ビットマップの更新
#--------------------------------------------------------------------------
alias vxace_sp1_update_bitmap update_bitmap
def update_bitmap
if @picture.name.empty?
self.bitmap = nil
else
vxace_sp1_update_bitmap
end
end
end
#------------------------------------------------------------------------------
class Window_Base
#--------------------------------------------------------------------------
# ● フォント設定のリセット
#--------------------------------------------------------------------------
alias vxace_sp1_reset_font_settings reset_font_settings
def reset_font_settings
vxace_sp1_reset_font_settings
contents.font.bold = Font.default_bold
contents.font.italic = Font.default_italic
end
end
#------------------------------------------------------------------------------
class Scene_Battle
#--------------------------------------------------------------------------
# ● 魔法反射の発動
#--------------------------------------------------------------------------
alias vxace_sp1_invoke_magic_reflection invoke_magic_reflection
def invoke_magic_reflection(target, item)
@subject.magic_reflection = true
vxace_sp1_invoke_magic_reflection(target, item)
@subject.magic_reflection = false
end
end
复制代码
’’
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1