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

Project1

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

[已经过期] 使用了宠物系统出现了BUG

[复制链接]

Lv1.梦旅人

梦石
0
星屑
99
在线时间
59 小时
注册时间
2015-9-4
帖子
43
跳转到指定楼层
1
发表于 2017-6-16 15:28:59 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
使用了宠物系统出现两个问题,求教大神帮我整理下,
第一个是使用了金牌抓捕卡抓捕宠物没有成功,它的说明是百分百的成功,我测试2次都没成功。
第二个是脚本出现问题,大大请看图片

1.png (11.65 KB, 下载次数: 16)

1.png

2.png (127.85 KB, 下载次数: 23)

2.png

宠物系统.rar

556.08 KB, 下载次数: 92

Lv3.寻梦者

梦石
0
星屑
2253
在线时间
1374 小时
注册时间
2011-2-10
帖子
602

开拓者

2
发表于 2017-6-16 22:07:59 | 只看该作者
actor_x就是文字的X坐标,actor_x = 1 * 160 + 4或者自己改,捕捉率的确不是百分百,还是要看敌人血量减少量,
CATCH_PET_ITEMS = {34=>60, 35=>80, 36=>20000}设置成20000,敌人减百分之1血也能百分百捕捉

点评

在前面几行中加个actor_x=1*160+4或者直接把actor_x替换成数字  发表于 2017-6-17 15:48
self.contents.draw_text(actor_x, 96, 120, 32, "LEVEL UP!")它错误的就在这个地方,大神,这个怎么改了  发表于 2017-6-17 15:38
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
99
在线时间
59 小时
注册时间
2015-9-4
帖子
43
3
 楼主| 发表于 2017-6-17 15:52:06 | 只看该作者
sirenke 发表于 2017-6-16 22:07
actor_x就是文字的X坐标,actor_x = 1 * 160 + 4或者自己改,捕捉率的确不是百分百,还是要看敌人血量减少 ...

#物品—>捕捉卡 ID 以及其增加的捕捉成功率。(百分比)
CATCH_PET_ITEMS = {34=>60, 35=>80, 36=>20000}
这里使用了20000还是抓捕不是百分百成功的,宠物是根据它的血量多少来使用道具增加抓捕成功率的
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
99
在线时间
59 小时
注册时间
2015-9-4
帖子
43
4
 楼主| 发表于 2017-6-17 15:55:01 | 只看该作者
sirenke 发表于 2017-6-16 22:07
actor_x就是文字的X坐标,actor_x = 1 * 160 + 4或者自己改,捕捉率的确不是百分百,还是要看敌人血量减少 ...

def refresh
    self.contents.clear
    actor = $game_party.actors[0]
    return if actor == nil
    draw_actor_graphic(actor, 20, 40)
    draw_actor_name(actor, 0, 0)
    draw_actor_hp(actor, 80, 32, 120)
    draw_actor_sp(actor, 80, 64, 120)
    if @level_up_flags[0]
      self.contents.font.color = normal_color
      self.contents.draw_text(actor_x, 240, 120, 32, "LEVEL UP!")
    else
      draw_actor_state(actor, 80, 96)
    end
  end



你帮我加下好吗,对脚本不熟悉
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2253
在线时间
1374 小时
注册时间
2011-2-10
帖子
602

开拓者

5
发表于 2017-6-17 16:21:27 | 只看该作者
我也只会点F1帮助里面的,总之在def与if之间加入actor_x=1*160+4这行就行了
捕捉率公式
    i = CATCH_PET_ITEMS[item.id]                      #获取设置的数值
    h = (self.maxhp - self.hp) * 100.0 / self.maxhp #获取受到伤害百分比,所以满血不能捕捉
    n = Integer(i * h / 200.0)                              #然后相乘除以200
    if rand (100) < n                                           #n>随机数0..99就Get!
      self.damage = "Get!"
      $game_party.add_pet(self.id)
    else
      self.damage = "Miss!"
    end

评分

参与人数 1星屑 +90 收起 理由
RyanBern + 90 塞糖

查看全部评分

回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
99
在线时间
59 小时
注册时间
2015-9-4
帖子
43
6
 楼主| 发表于 2017-6-18 10:15:39 | 只看该作者
花天酒地 发表于 2017-6-17 15:52
#物品—>捕捉卡 ID 以及其增加的捕捉成功率。(百分比)
CATCH_PET_ITEMS = {34=>60, 35=>80, 36=>20000} ...

我在def和if之间加入了actor_x=1*160+4
结果可以了,但是又出现个小问题,就是战斗完以后整个画面有点小小的跳动,一直持续
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
99
在线时间
59 小时
注册时间
2015-9-4
帖子
43
7
 楼主| 发表于 2017-6-18 10:20:09 | 只看该作者
sirenke 发表于 2017-6-17 16:21
我也只会点F1帮助里面的,总之在def与if之间加入actor_x=1*160+4这行就行了
捕捉率公式
    i = CATCH_PET_ ...

恩 谢谢了 。最后个问题就是这个代码放在哪个地方
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-26 20:57

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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