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

Project1

 找回密码
 注册会员
搜索
查看: 2127|回复: 15
打印 上一主题 下一主题

几个新手问题。。。。

 关闭 [复制链接]
头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2007-6-25
帖子
97
跳转到指定楼层
1
发表于 2007-6-25 20:00:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2007-6-25
帖子
97
2
 楼主| 发表于 2007-6-25 20:00:20 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽

Lv1.梦旅人

梦石
0
星屑
50
在线时间
15 小时
注册时间
2007-2-18
帖子
2464
3
发表于 2007-6-25 20:11:57 | 只看该作者
1,2:有专门的脚本
3:你要怎么修改啊

显示 地图名 + 角色坐标

作者
柳柳
  版本与更新
  2005年12月

相关网址
  点此进入讨论贴
  范例工程
  

脚本功能
在地图上显示XY坐标和当前地图名。不需要得地图名可以用空格做地图名

使用方法
main前插入,然后打开25号开关启动脚本;关闭25号开关关闭脚本

脚本内容

#==========================================================================
# 本脚本来自www.66rpg.com,用于任何游戏请保留此信息。别以为加密就可以del哦
#==========================================================================

XY_SWITCH = 25 # 当25号开关打开,本脚本才开始工作。

#==============================================================================
# ■ Window_XY
#------------------------------------------------------------------------------
#  显示坐标的窗口。
#==============================================================================
class Window_xy < Window_Base#注意前面那个window_xy是文件名
#--------------------------------------------------------------------------
# ● 初始化窗口
#--------------------------------------------------------------------------
def initialize
   super(0, 0, 160, 96)#最后面那个数字是宽要显示多个需要改大,前面一个是长~
   self.contents = Bitmap.new(width - 32, height - 32)
   self.back_opacity = 255  # 这个是背景透明
   self.opacity = 255       # 这个是边框和背景都透明
   self.contents_opacity = 255       # 这个是内容透明
   self.visible = false
   refresh
   @x = $game_player.x
   @y = $game_player.y
   @id = $game_map.map_id
end

#--------------------------------------------------------------------------
# ● 刷新
#--------------------------------------------------------------------------
def refresh
   if $game_switches[XY_SWITCH] #确定开关是否打开,可以自己改变开关
     @x = $game_player.x #获取角色X坐标
     @y = $game_player.y #获取角色Y坐标
     @id = $game_map.map_id  #获取地图编号
    self.contents.clear #清除以前的东西
    $mapnames = load_data("Data/MapInfos.rxdata") #读取地图名文件
    map_name = $mapnames[@id].name #获得地图名
    self.contents.font.color = normal_color#颜色,这里是白色~
    self.contents.draw_text(0, 0, 116, 32, map_name,2)
    self.contents.font.color = system_color#颜色,暗蓝色
    self.contents.draw_text(0, 32, 120, 32, "X:")#显示X这个字的位置,引号里面的内容随便改,比如"X坐标地址"
    self.contents.font.color = normal_color#颜色,这里是白色~
    self.contents.draw_text(0, 32, 52, 32, @x.to_s,2)
    self.contents.font.color = system_color#上面那个是X坐标的变量,可以自己更改变量名~
    self.contents.draw_text(64, 32, 128, 32, "Y:")#显示Y这个字~
    self.contents.font.color = normal_color
    self.contents.draw_text(0, 32, 116, 32, @y.to_s,2)
   end
end
#--------------------------------------------------------------------------
# ● 判断文字刷新。节约内存用
#--------------------------------------------------------------------------
def judge
   return true if @x != $game_player.x
   return true if @y != $game_player.y
   return true if @id != $game_map.map_id
   return false
end
end
###########################################################################
#                           下面的东西不需要掌握~                         #
###########################################################################

class Scene_Map
alias xy_66rpg_main main
def main
   @xy_window = Window_xy.new
   @xy_window.x = 640 - 160
   @xy_window.y = 480 - 96
   @xy_window.opacity = 0
   xy_66rpg_main
   @xy_window.dispose
end
#--------------------------------------------------------------------------
# ● 刷新画面
#--------------------------------------------------------------------------
alias xy_66rpg_update update
def update
   xy_66rpg_update
   if $game_switches[XY_SWITCH]
     @xy_window.visible = true      
     @xy_window.refresh if @xy_window.judge
   else
     @xy_window.visible = false
   end
end
end
#==========================================================================
# 本脚本来自www.66rpg.com,用于任何游戏请保留此信息。别以为加密就可以del哦
#==========================================================================


系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
0 小时
注册时间
2007-6-25
帖子
97
4
 楼主| 发表于 2007-6-25 20:22:26 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (暗夜天使)

精灵族の天使

梦石
0
星屑
1707
在线时间
3039 小时
注册时间
2007-3-16
帖子
33731

开拓者贵宾

5
发表于 2007-6-25 20:25:01 | 只看该作者
以下引用津名魅于2007-6-25 12:00:20的发言:


本帖为提问贴,由论坛自动悬赏论坛经验100点 *^__^*
1 地图显示应该要怎么实现的?

我是用一个道具后调用公共事件,显示图片,可是这时候角色还是可以移动,要怎么取消角色移动和实现按ESC取消地图显示?

2。。。还是地图。。。。怎么可以把角色根据当前地图来在“地图道具”中显示不同位置? 用开关设置吗? 类似白绊的那种。。。

3持续伤害的计算公式怎么修改的?
我一直以为是 Game_battler3里面的
#--------------------------------------------------------------------------
# ● 应用连续伤害效果
#--------------------------------------------------------------------------
def slip_damage_effect
     if self.state?(3)
     # 设置伤害
     self.damage = self.maxhp / 10
     # 分散
     if self.damage.abs > 0
       amp = [self.damage.abs * 15 / 100, 1].max
       self.damage += rand(amp+1) + rand(amp+1) - amp
     end
     # HP 的伤害减法运算
     self.hp -= self.damage

    # 设置伤害
     self.damage = self.maxhp / 10
这一段我试过把/10改成 /1 /100/50 都没效果,难道是要改期她地方吗?

第一题楼上正解。第二题如果不想让角色移动的话,设为开关控制的自动事件,完成以后关闭控制开关。
第三题楼主说的是中毒状态的连续伤害。地图用的在这里:
Game_party 的第290行

  1.   #--------------------------------------------------------------------------
  2.   # ● 检查连续伤害 (地图用)
  3.   #--------------------------------------------------------------------------
  4.   def check_map_slip_damage
  5.     for actor in @actors
  6.       if actor.hp > 0 and actor.slip_damage?
  7.         actor.hp -= [actor.maxhp / 100, 1].max
  8.         if actor.hp == 0
  9.           $game_system.se_play($data_system.actor_collapse_se)
  10.         end
  11.         $game_screen.start_flash(Color.new(255,0,0,128), 4)
  12.         $game_temp.gameover = $game_party.all_dead?
  13.       end
  14.     end
  15.   end
复制代码

第二题可以用更好的小地图脚本。
http://rpg.blue/web/htm/news294.htm
请参照脚本仔细设置。
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
15 小时
注册时间
2007-2-18
帖子
2464
6
发表于 2007-6-25 20:25:01 | 只看该作者
  # 设置伤害
     self.damage = self.maxhp / 10

就是这里啊
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
15 小时
注册时间
2007-2-18
帖子
2464
7
发表于 2007-6-25 20:26:23 | 只看该作者
楼上,他没说是地图用啊
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (暗夜天使)

精灵族の天使

梦石
0
星屑
1707
在线时间
3039 小时
注册时间
2007-3-16
帖子
33731

开拓者贵宾

8
发表于 2007-6-25 20:35:48 | 只看该作者
以下引用kaze于2007-6-25 12:25:01的发言:


# 设置伤害
    self.damage = self.maxhp / 10


就是这里啊

如果不是地图用就是这里了……不过这里仅仅是设置伤害,如果需要设置再生的话……我建议你使用这个。
http://rpg.blue/web/htm/news19.htm
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
15 小时
注册时间
2007-2-18
帖子
2464
9
发表于 2007-6-25 20:38:07 | 只看该作者
在生是什么?
其实我也不太熟的{/lh}
回复 支持 反对

使用道具 举报

Lv3.寻梦者 (暗夜天使)

精灵族の天使

梦石
0
星屑
1707
在线时间
3039 小时
注册时间
2007-3-16
帖子
33731

开拓者贵宾

10
发表于 2007-6-25 20:43:09 | 只看该作者
再生?如果你玩过魔力的巫师你应该知道的。
每个回合恢复一定数量的hp或者sp
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-9-21 06:39

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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