设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
12
返回列表 发新帖
楼主: heychen
打印 上一主题 下一主题

如何判断角色脚下坐标?

 关闭 [复制链接]

Lv1.梦旅人

梦石
0
星屑
60
在线时间
6 小时
注册时间
2008-1-9
帖子
109
11
 楼主| 发表于 2008-3-22 20:11:45 | 只看该作者
改了,这是新的

#-------------------------------------------------------------------------
# ● 时间条参数设定
#    设定技巧:可以根据"设定移动速度"来放慢或加快移动
#             如果设置"移动速度"为负数,就会倒退走(必须$minbar<=$maxbar)
#             如果时间条的宽度小,可以把$nextbar设置为小数来放慢速度
#-------------------------------------------------------------------------
#设置时间条初始值
$minbar=0

#设置时间条的最大值,宽度
$maxbar=50

#设置时间条的移动速度可以是"小数"或"整数(负数)"
$nextbar=1

#设置时间条运行和显示的开关,和初始化开关
$show=1 #显示/隐藏时间条
$stop=2 #启动/停止时间条
$init=3 #初始化时间条
$done=4 #到时间之后打开的开关,可以用个自动执行的公共时间调此开关

#设置窗口宽高
$width=$maxbar+114
$height=64

#设置窗口位置
$o=0
#设置参考
#        0-采用$x,$y的自定义设置
#        1-左上角
#        2-正上
#        3-右上角
#        4-正中
#        5-左下角
#        6-正下
#        7-右下角

#定义窗口透明程度,0透明,255不透明数值范围0~255
$opacity=0         #设置窗口边框透明度
$back_opacity=0    #设置窗口背景透明度

#------------------------------------------------------------------------
# ● 时间条描绘
#------------------------------------------------------------------------
def draw_time_bar(x, y, width)
# 边框设定
self.contents.font.color = system_color
self.contents.draw_text(x,y,60,32,"时间:")
self.contents.fill_rect(x-2+60, y+16, width+4,8, Color.new(255, 255, 255, 255))
self.contents.fill_rect(x-1+60, y+17, width+2,6, Color.new(0, 0, 0, 255))
# 时间条长度设定
w = $minbar
# 时间条颜色设定
self.contents.fill_rect(x+60, y+18, w,1, Color.new(96,255, 96, 255))
self.contents.fill_rect(x+60, y+19, w,1, Color.new(0, 255, 0, 255))
self.contents.fill_rect(x+60, y+20, w,1, Color.new(0, 128, 0, 255))
self.contents.fill_rect(x+60, y+21, w,1, Color.new(0, 0, 0, 255))
end

#----------------------------------------------------------------------------
# ● 时间窗口描绘
#----------------------------------------------------------------------------
class Window_Timebar < Window_Base
#--------------------------------------------------------------------------
# ● 初始化窗口
#--------------------------------------------------------------------------
def initialize
  super(0, 0, $width, $height)
  self.contents = Bitmap.new(width - 32, height - 32)
  refresh
end
#--------------------------------------------------------------------------
# ● 窗口内容
#--------------------------------------------------------------------------
def refresh
  #判断时间窗口是否可见
  if $game_switches[$show]
    self.visible=true
  else
    self.visible=false
  end
  
  #设置时间窗口透明度
  self.back_opacity=$back_opacity
  self.opacity=$opacity
  
  #设置窗口位置
  case $o
  when 0

self.x=$game_player.x
self.y=$game_player.y + 1

   when 1
    self.x=0
    self.y=0
  when 2
    self.x=320-$width/2
    self.y=0
  when 3
    self.x=640-$width
    self.y=0
  when 4
    self.x=320-$width/2
    self.y=240-$height/2
  when 5
    self.x=0
    self.y=480-$height
  when 6
    self.x=320-$width/2
    self.y=480-$height
  when 7
    self.x=640-$width
    self.y=480-$height
  else
    #防止错误发生
    self.x=100  
    self.y=100
  end
  
  #窗口内容
  self.contents.clear
  draw_time_bar(4,0,$maxbar)
end
end

#-----------------------------------------------------------------------------
# ● 地图上显示时间描绘
#-----------------------------------------------------------------------------
class Scene_Map
# 声明别名,以免冲突,主要用于功能追加
alias mohock_main main
def main
# 生成倒计时窗口
@time_bar=Window_Timebar.new

# 调用别名 (具体功能不清楚,但是不调用必定有错误)
mohock_main
# 释放倒计时窗口
@time_bar.dispose
end

# 声明别名,以免冲突,主要用于功能追加
alias mohock_update update
def update
# 如果初始化开关打开
if $game_switches[$init]
   # 初始化数值
   $minbar=0
   $game_switches[$init]=false
end
# 刷新时间条,增加数值自己改动
if $game_switches[$stop]
   #判断是否超过最大数值,是则执行任务,不是继续增加
   if $minbar >= $maxbar
    #执行开关设置为真
    $game_variables[$done] = true
   else
    $minbar += $nextbar
   end
end
  @time_bar.refresh
  # 调用别名 (具体功能不清楚,但是不调用必定有错误)
  mohock_update
end
end
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-2-18
帖子
1423
12
发表于 2008-3-22 20:16:11 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
60
在线时间
6 小时
注册时间
2008-1-9
帖子
109
13
 楼主| 发表于 2008-3-22 20:24:39 | 只看该作者
=。=好了。太感谢了{/ll}。。。。。

在补充一个问题好吗?
#设置时间条的移动速度可以是"小数"或"整数(负数)"
$nextbar=1的1是什么单位???秒?帧?
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2008-2-18
帖子
1423
14
发表于 2008-3-22 20:40:19 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
60
在线时间
6 小时
注册时间
2008-1-9
帖子
109
15
 楼主| 发表于 2008-3-22 20:48:02 | 只看该作者
那明白了。谢谢{/dy}
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-11-29 13:49

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表