Project1
标题: 请问怎么做随机移动的事件? [打印本页]
作者: 海绵体质 时间: 2015-11-30 23:09
标题: 请问怎么做随机移动的事件?
就是到达某个位置以后会被随机传送到某个范围内的任意一个位置,我不会做诶。求教求教。
作者: Kesecky 时间: 2015-12-1 00:17
用变量传送,然后变量用随机数(大概可以
作者: 语义噪音 时间: 2015-12-1 13:43
本帖最后由 语义噪音 于 2015-12-1 13:52 编辑
传送:
/*
* 将玩家小队传送到指定位置。
*
* @param {Number} mapId 地图ID,参阅data/MapInfos.json
* @param {Number} x 目标位置的X坐标
* @param {Number} y 目标位置的Y坐标
* @param {Number} d 传送结束后的方向。方向定义同小键盘的数字。
* @param {Number} fadeType 渐变类别。0为黑色,1为白色,不设置或者大于1为无渐变。
*/
Game_Player.prototype.reserveTransfer(mapId, x, y, d, fadeType)
/*
* 将玩家小队传送到指定位置。
*
* @param {Number} mapId 地图ID,参阅data/MapInfos.json
* @param {Number} x 目标位置的X坐标
* @param {Number} y 目标位置的Y坐标
* @param {Number} d 传送结束后的方向。方向定义同小键盘的数字。
* @param {Number} fadeType 渐变类别。0为黑色,1为白色,不设置或者大于1为无渐变。
*/
Game_Player.prototype.reserveTransfer(mapId, x, y, d, fadeType)
随机:
/**
* 生成一个范围在0和max-1之间的随机整数。
*
* @static
* @param {Number} max 上限(不包含在内)
* @return {Number} 一个随机整数
*/
Math.randomInt(max)
/**
* 生成一个范围在0和max-1之间的随机整数。
*
* @static
* @param {Number} max 上限(不包含在内)
* @return {Number} 一个随机整数
*/
Math.randomInt(max)
要获得一个当前的Game_Player对象,只需要使用内置的全局变量$gamePlayer就可以。
所以你想要做的事,可以这样做:
$gamePlayer.reserveTransfer(mapId, min_x+Math.randomInt(max_x), min_y+Math.randomInt(max_y))
$gamePlayer.reserveTransfer(mapId, min_x+Math.randomInt(max_x), min_y+Math.randomInt(max_y))
其中,mapId是目标地图的ID,min_x、max_x、min_y、max_y分别为x和y的最大最小值,没有给定方向,就默认采用之前的方向,没有渐变类别,所以一瞬间就到了。
这只是个原型,实际使用时可以在此基础上进行修改。
作者: 海绵体质 时间: 2016-1-25 15:38
语义噪音 发表于 2015-12-1 13:43
传送:
/*
谢谢(。◕∀◕。)
作者: chenyilindzh 时间: 2016-1-25 18:33
不会传到墙上吗····
作者: 1097811376 时间: 2016-1-25 22:59
chenyilindzh 发表于 2016-1-25 18:33
不会传到墙上吗····
大概只能把可以移动的地点列个数组,然后再随机选择一个数组移动了,{:2_257:}
作者: 小叮鈴 时间: 2016-1-25 23:12
變量隨機1~10
分別設定1~10每個傳送的地點
欢迎光临 Project1 (https://rpg.blue/) |
Powered by Discuz! X3.1 |