查看: 1906|回复: 4

[已经解决] 暗雷遇怪后几率触发战斗

  [复制链接]
梦石
0
星屑
1428
在线时间
1705 小时
注册时间
2011-8-17
回帖
651
发表于 2011-11-23 19:39:58 | 显示全部楼层 |阅读模式

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

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

×

想要在地图设置了敌人队伍以后,脚步数满足的情况下不一定触发战斗,而是几率触发(如50%),貌似一定要用脚本,求高手

点评

随机一个0-100之间的数,如果这个数高于50,通常遇敌,低于50,从新计算遇敌步数,同时取消本次遇敌。  发表于 2011-11-24 12:37
roguelike求生RPG研发中....

Mr.Gandum

梦石
0
星屑
226
在线时间
2070 小时
注册时间
2007-1-31
回帖
2982

贵宾

发表于 2011-11-23 19:42:54 | 显示全部楼层
VX默认遇敌步数是按照你给的数做一个计算
原计算式:
实际遇敌步数= 随机数(0-n) + 随机数(0- n)
n就是你给的数。

你想改的话改Game_Player 196行左右的
  1.   def make_encounter_count
复制代码

点评

额....表示没看懂,能说清楚一些吗,谢谢  发表于 2011-11-23 20:59
回复

使用道具 举报

虚空人形

梦石
0
星屑
4866
在线时间
2037 小时
注册时间
2011-8-11
回帖
3260

贵宾

发表于 2011-11-24 00:05:05 | 显示全部楼层
     这样搞还不如直接把遇敌步数加大一倍。
回复

使用道具 举报

小黑

梦石
0
星屑
50
在线时间
140 小时
注册时间
2011-8-23
回帖
459
发表于 2011-11-24 03:28:26 | 显示全部楼层
本帖最后由 咚小黑 于 2011-11-24 03:30 编辑
  1.   #--------------------------------------------------------------------------
  2.   # ● 初始化遇敌计数
  3.   #--------------------------------------------------------------------------
  4.   def make_encounter_count
  5.     if $game_map.map_id != 0
  6.       n = $game_map.encounter_step
  7.       @encounter_count = rand(n) + rand(n) + 1  # 好比掷两个骰子
  8.     end
  9.   end
复制代码
(我没说话)

实际遇敌步数= 随机数(0-n) + 随机数(0- n)
起码对得起自己。
回复

使用道具 举报

Mr.Gandum

梦石
0
星屑
226
在线时间
2070 小时
注册时间
2007-1-31
回帖
2982

贵宾

发表于 2011-11-24 12:33:52 | 显示全部楼层
明白了:
  1. #==============================================================================
  2. # ■ Scene_Map
  3. #------------------------------------------------------------------------------
  4. #  处理地图画面的类。
  5. #==============================================================================

  6. class Scene_Map < Scene_Base
  7.   alias percentage_update_encounter update_encounter
  8.   #--------------------------------------------------------------------------
  9.   # ● 遇敌处理
  10.   #--------------------------------------------------------------------------
  11.   def update_encounter
  12.     if $game_player.encounter_count == 0 and not $game_map.interpreter.running?
  13.       and not $game_system.encounter_disabled
  14.       per = rand(101)
  15.       if per > 50
  16.         percentage_update_encounter
  17.       else
  18.         $game_player.make_encounter_count
  19.         return
  20.       end
  21.     end
  22.   end
  23. end
复制代码
直接插Main上头。在遇敌时判断一个随机数,小于50则从新算步数。

点评

小于50?这是什么概率?  发表于 2011-11-24 12:35
回复

使用道具 举报

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

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部