Project1
标题:
请教一下主角朝向只能左右
[打印本页]
作者:
咚小黑
时间:
2011-11-19 17:13
标题:
请教一下主角朝向只能左右
本帖最后由 咚小黑 于 2011-11-19 17:14 编辑
主角的只会朝向左右两个方向。
1. 步行图修改(失败)
2. 事件设置(失败)
求方法。不影响主角移动而朝向只能为左右 dsu_plus_rewardpost_czw
作者:
玄蜀念
时间:
2011-11-19 17:57
设置通行方向?
作者:
空の翼
时间:
2011-11-19 18:06
不太理解:不影响主角移动而朝向只能为左右 这个。也就是说不能上下移动吗?还是说不轮按上下键都会向左右走吗?第一个可能需要修改脚本;第二个事件或许能解决(不知道LZ的要求是啥)
作者:
BS包仔
时间:
2011-11-19 20:46
1.把行走图的上下改为左右
2.设置键位,不能按上下或将上下移位
3.主角行走图空白,然后设置一个事件为主角,然后纯事件操控
如有不明白回复或点评说明
作者:
皮卡星
时间:
2011-11-19 21:02
于是LS几位的回复真那啥= =
不是说了不行么= =
试试用这个脚本(原创):
module Move
Move_Variabile = 36
end
class Game_Player < Game_Character
DR_UP = Input::UP
DR_DOWN = Input::DOWN
DR_LEFT = Input::LEFT
DR_RIGHT = Input::RIGHT
def move_by_input
return unless movable?
return if $game_map.interpreter.running?
if $game_variables[Move::Move_Variabile] == 1
elsif $game_variables[Move::Move_Variabile] == 2
if Input.press?(DR_LEFT)
move_left
elsif Input.press?(DR_RIGHT)
move_right
end
elsif $game_variables[Move::Move_Variabile] == 0
@move_speed = 4
@opacity = 255
@blend_type = 0
@direction_fix = false
@walk_anime = true
@step_anime = false
if Input.press?(DR_LEFT)
move_left
elsif Input.press?(DR_RIGHT)
move_right
elsif Input.press?(DR_DOWN)
move_down
elsif Input.press?(DR_UP)
move_up
end
else
@move_speed = 4
@opacity = 255
@blend_type = 0
@direction_fix = false
@walk_anime = true
@step_anime = false
if Input.press?(DR_LEFT)
move_left
elsif Input.press?(DR_RIGHT)
move_right
elsif Input.press?(DR_DOWN)
move_down
elsif Input.press?(DR_UP)
move_up
end
end
end
end
复制代码
Module变量自行修改
变量=1的时候不能移动
变量=2的时候只能左右
变量=0或012这三个数字以外就是默认移动
作者:
飞天の小月、、
时间:
2011-11-19 21:17
请问一下,是不是冒险岛那样的?
作者:
诡异の猫
时间:
2011-11-20 00:53
本帖最后由 诡异の猫 于 2011-11-20 00:54 编辑
6楼的亲那脚本 当变量36等于2时直接没办法上下移动了呃...
LZ应该是想像FC热血物语那种吧...
最简单的方法就是把Game_Character类里面
第557行的turn_down和563行turn_down if turn_ok删掉
还有第608行的turn_up和第614行的turn_up if turn_ok删掉
如果只是想主角上下移动不转向 而 事件上下移动转向的话
就把这脚本插到main之前就行了
class Game_Player < Game_Character
#--------------------------------------------------------------------------
# ● 向下移动
# turn_ok : 允许当场转向
#--------------------------------------------------------------------------
def move_down(turn_ok = true)
if passable?(@x, @y+1) # 可通行的场合
@y = $game_map.round_y(@y+1)
@real_y = (@y-1)*256
increase_steps
@move_failed = false
else # 不可通行的场合
check_event_trigger_touch(@x, @y+1) # 是否触发接触事件
@move_failed = true
end
end
#--------------------------------------------------------------------------
# ● 向上移动
# turn_ok : 允许当场转向
#--------------------------------------------------------------------------
def move_up(turn_ok = true)
if passable?(@x, @y-1) # 可通行的场合
@y = $game_map.round_y(@y-1)
@real_y = (@y+1)*256
increase_steps
@move_failed = false
else # 不可通行的场合
check_event_trigger_touch(@x, @y-1) # 是否触发接触事件
@move_failed = true
end
end
end
复制代码
未经全面测试 不知是否存在BUG LZ试一下吧
作者:
咚小黑
时间:
2011-11-20 18:13
简单说:跟地下城一样
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1