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

Project1

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

[有事请教] 请问RMMV 怎 么实现 敌人视距???

[复制链接]

Lv2.观梦者

梦石
0
星屑
788
在线时间
109 小时
注册时间
2008-2-10
帖子
254
跳转到指定楼层
1
发表于 2017-11-6 09:13:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
RMMV 怎 么实现 敌人视力范围???  当主角给NPC看见时触发事件


有没有这样的脚本 呢?      

h

Lv3.寻梦者

梦石
0
星屑
2727
在线时间
210 小时
注册时间
2017-9-28
帖子
283
2
发表于 2017-11-6 11:39:55 | 只看该作者
可以去看看YEPRegionEvents
回复 支持 1 反对 0

使用道具 举报

Lv2.观梦者

梦石
0
星屑
788
在线时间
109 小时
注册时间
2008-2-10
帖子
254
3
 楼主| 发表于 2017-11-6 19:11:29 | 只看该作者
擦不完的水 发表于 2017-11-6 11:39
可以去看看YEPRegionEvents

谢谢·······
h
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
788
在线时间
109 小时
注册时间
2008-2-10
帖子
254
4
 楼主| 发表于 2017-11-6 19:33:42 | 只看该作者
本帖最后由 花王子 于 2017-11-6 19:34 编辑
擦不完的水 发表于 2017-11-6 11:39
可以去看看YEPRegionEvents

看了说明 ,表示 不会用

介绍和说明
============================================================================

你可以在地图上标出255个区域。你可以设置它,以便
玩家踏上特定的区域,每次都会有一个普通的比赛项目。
他们踩了它。为此,将一个公共事件的ID绑定到
这个插件的参数。它会使任何瓷砖与此非常
特定区域id使用普通触发器触发玩家触摸事件
您已标记的事件id。

请记住,如果在触摸输入中发生任何常见事件,它将
清除游戏引擎的触摸输入。

============================================================================
notetags
============================================================================

你可以使用这个notetag在你的地图。

图notetags:
<区域X事件:y >
如果游戏者走到标有X区域的瓷砖上,它就会运行
常见事件y。这将覆盖标记中的默认设置。
编辑器专门针对该地图。

============================================================================
更新日志
============================================================================

1.02版:
-修正了如果鼠标按钮阻止区域事件触发的错误
比平常持有的时间长。

1.01a版:
-修正了一个错误的区域活动notetags,停止工作,如果是用
传送到同一张地图上。

1版:
-完成插件!
h
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
788
在线时间
109 小时
注册时间
2008-2-10
帖子
254
5
 楼主| 发表于 2017-11-6 19:44:12 | 只看该作者
要怎么实现 敌人
视线、视野

点评

B站有YEP插件使用教程的,你自己搜下。  发表于 2017-11-6 21:43
h
回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
2727
在线时间
210 小时
注册时间
2017-9-28
帖子
283
6
发表于 2017-11-6 21:42:23 | 只看该作者
花王子 发表于 2017-11-6 19:44
要怎么实现 敌人
视线、视野

你可以试试在NPC前方弄一大块区域1,然后主角走上去触发YEP插件区域1的参数指定的事件序号。
这个插件应该是这样的吧,我没用过。还不行的话我再去自己操作一下再告诉你,虽然我也刚学没多久。
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
7427
在线时间
948 小时
注册时间
2017-9-27
帖子
583
7
发表于 2017-11-6 21:55:13 | 只看该作者
JAVASCRIPT 代码复制下载
  1. //=============================================================================
  2. // MOG_EventSensor.js
  3. //=============================================================================
  4.  
  5. /*:
  6.  * @plugindesc (v1.1) Event distance system.
  7.  * @author Moghunter
  8.  *
  9.  * @param Self Switch Key
  10.  * @desc Setting the Letter of SelfSwitch
  11.  * @default D
  12.  *
  13.  * @help  
  14.  * =============================================================================
  15.  * +++ MOG - Event Sensor (v1.1) +++
  16.  * By Moghunter
  17.  * [url]https://atelierrgss.wordpress.com/[/url]
  18.  * =============================================================================
  19.  * Event distance system.
  20.  * Depending on the distance between the player and the event, the predetermined
  21.  * page of the event can be activated or not.
  22.  * =============================================================================
  23.  * To set the distance of the event sensor, place this comment in the event.
  24.  *
  25.  * event sensor : X
  26.  *
  27.  * =============================================================================
  28.  * HISTORY
  29.  * =============================================================================
  30.  * (v1.1) - Change noteTag to standardize the form of commands.
  31.  *
  32.  */
  33.  
  34. //=============================================================================
  35. // ** PLUGIN PARAMETERS
  36. //=============================================================================
  37.   
  38. var Imported = Imported || {};  
  39. Imported.MOG_EventSensor = true;  
  40. var Moghunter = Moghunter || {};
  41.  
  42.  
  43. Moghunter.parameters = PluginManager.parameters('MOG_EventSensor');
  44. Moghunter.sensor_range_key = String(Moghunter.parameters['Self Switch Key'] || "D");
  45.  
  46. //=============================================================================
  47. // ** Character Base
  48. //=============================================================================
  49.  
  50. //==============================
  51. // * Init Members
  52. //==============================
  53. var _alias_mog_evensensor_cbase_initMembers = Game_CharacterBase.prototype.initMembers;
  54. Game_CharacterBase.prototype.initMembers = function() {
  55.     _alias_mog_evensensor_cbase_initMembers.call(this);
  56.     this._sensor_range = [false, 0];
  57. };
  58.  
  59. //=============================================================================
  60. // ** Sprite Character
  61. //=============================================================================
  62.  
  63. //==============================
  64. // * Initialize
  65. //==============================
  66. var _alias_mog_evensensor_schar_initialize = Sprite_Character.prototype.initialize;
  67. Sprite_Character.prototype.initialize = function(character) {
  68.     _alias_mog_evensensor_schar_initialize.call(this, character);
  69.     if (this._character && this._character._eventId) { this._character.check_event_sensor() };
  70. };
  71.  
  72. //=============================================================================
  73. // ** Scene Map
  74. //=============================================================================
  75.  
  76. //==============================
  77. // * Terminate
  78. //==============================
  79. var _alias_mog_evensensor_terminate = Scene_Map.prototype.terminate;
  80. Scene_Map.prototype.terminate = function() {
  81.     _alias_mog_evensensor_terminate.call(this);
  82.     $gameMap.events().forEach(function(event) {
  83.         if (event._sensor_range[0]) { $gameSelfSwitches.setValue(event.sensor_key(), false) };
  84.     }, this);
  85. };
  86.  
  87. //=============================================================================
  88. // ** Game Event
  89. //=============================================================================
  90.  
  91. //==============================
  92. // * Setup Page
  93. //==============================
  94. var _alias_mog_evensensor_gevent_setupPage = Game_Event.prototype.setupPage;
  95. Game_Event.prototype.setupPage = function() {
  96.     _alias_mog_evensensor_gevent_setupPage.call(this);
  97.     this.check_event_sensor();
  98. };
  99.  
  100. //==============================
  101. // * Check Event Sensor
  102. //==============================
  103. Game_Event.prototype.check_event_sensor = function() {
  104.     if (!this._erased && this.page()) {
  105.         this.list().forEach(function(l) {
  106.             if (l.code === 108) {
  107.                 var comment = l.parameters[0].split(' : ');
  108.                 if (comment[0].toLowerCase() == "event sensor") {
  109.                     this._sensor_range = [true, Number(Math.abs(comment[1]))];
  110.                     this._need_clear_sensor = false;
  111.                 };
  112.             };
  113.         }, this);
  114.     };
  115. };
  116.  
  117. //==============================
  118. // * Update
  119. //==============================
  120. var _mog_event_sensor_gev_update = Game_Event.prototype.update;
  121. Game_Event.prototype.update = function() {
  122.     _mog_event_sensor_gev_update.call(this);
  123.     if (this.needUpdateSensor()) { this.update_sensor() };
  124. };
  125.  
  126. //==============================
  127. // * Need Update Sensor
  128. //==============================
  129. Game_Event.prototype.needUpdateSensor = function() {
  130.     if (!this._sensor_range[0]) { return false };
  131.     return true;
  132. };
  133.  
  134. //==============================
  135. // * Sensor Dis
  136. //==============================
  137. Game_Event.prototype.sensor_dis = function() {
  138.     return Math.abs($gamePlayer.x - this.x) + Math.abs($gamePlayer.y - this.y);
  139. };
  140.  
  141. //==============================
  142. // * Sensor Key
  143. //==============================
  144. Game_Event.prototype.sensor_key = function() {
  145.     return [this._mapId, this._eventId, Moghunter.sensor_range_key];
  146. };
  147.  
  148. //==============================
  149. // * Update Sensor
  150. //==============================
  151. Game_Event.prototype.update_sensor = function() {
  152.     var enable = (this.sensor_dis() <= this._sensor_range[1]);
  153.     var last_enable = $gameSelfSwitches.value(this.sensor_key());
  154.     if (enable != last_enable) { this.sensor_effect(enable) };
  155. };
  156.  
  157. //==============================
  158. // * Sensor Effect
  159. //==============================
  160. Game_Event.prototype.sensor_effect = function(enable) {
  161.     $gameSelfSwitches.setValue(this.sensor_key(), enable);
  162. };

回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
27459
在线时间
1535 小时
注册时间
2006-1-10
帖子
2063

开拓者第一届地图绘制大赛RTP组第四名

8
发表于 2017-11-6 21:56:01 | 只看该作者
本帖最后由 king 于 2017-11-6 22:00 编辑

最好去看视频
你这个插件好像不是这个NPC范围,应该是区域事件
具体我找看看,YEP的插件是这个
Event Chase Player 事件追逐
Event Chase Player > Event Chase Stealth 隐身模式

MV帮助 http://miaowm5.github.io/RMMV-F1/日复一日,年复一年人还是保留一点自我兴趣的好啊~~~忘记过去 ,这样我就可以  放弃未来了……哭~~终于找回以前的头像了,哎~~原来我是那么的想念阿……
画地图没灵感?很烦?很无聊 【 戳 我 】一 大 波 地 图 在 等 你  \^0^/
我的游戏
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
788
在线时间
109 小时
注册时间
2008-2-10
帖子
254
9
 楼主| 发表于 2017-11-17 21:03:13 | 只看该作者
king 发表于 2017-11-6 21:56
最好去看视频
你这个插件好像不是这个NPC范围,应该是区域事件
具体我找看看,YEP的插件是这个

谢谢咯````````````
h
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2025-1-5 11:17

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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