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

Project1

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

[已经解决] 如何做一个搜集随机物品的任务。

[复制链接]

Lv3.寻梦者

梦石
0
星屑
1015
在线时间
245 小时
注册时间
2011-3-5
帖子
25
跳转到指定楼层
1
发表于 2017-10-13 23:14:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 407005278 于 2017-10-14 09:13 编辑

NPC随机在ID为x到y里面抽取一个道具(或者武器,防具)作为任务物品,并且需要的数量为随机。
如果仅仅是几个物品还可以一个一个分别设置,但是物品种类多起来之后就非常麻烦了。
实现这个任务的要做到两个方面:
1,如何在对话中显示此ID物品的名称。
2,赋予变量游戏数据时,指定是此ID的物品
2,在编辑器中,赋予变量游戏数据时,只能定义确定的ID,不能根据之前的设置,赋予这个变化的ID。

举个例子,如果任务是:需要1号道具 大宝剑 5个。(如果只是单纯的需要1号道具5个的话很简单,问题现在也有可能是需要2号,3号,4号等等,一个一个设置很麻烦)
1,在对话中显示:“英雄大人,请给我拿5把 大宝剑 ,我有特殊用处。”
2,交任务的时候,需要判断身上是否有5把 大宝剑 。编辑器设置是 变量操作----代入游戏数据----物品持有数,但是这个ID是固定的,如何设置这个物品ID是变量。




Lv5.捕梦者

梦石
0
星屑
29185
在线时间
604 小时
注册时间
2014-7-18
帖子
729

开拓者

2
发表于 2017-10-13 23:35:47 | 只看该作者
第一个可以通过条件分歧实现(如果会写代码的话也可以仿照识别\V[N]把他转换成N号变量的形式去改脚本增加一个\I[N]转换成N号物品的名字的功能......好吧当我没说)
第二个感觉问题说的不是很明白。
实现你这个功能可以先生成从X到Y的随机数,代入变量id中,然后在生成一个随机数,代入另一个变量b中去,然后条件分歧,如果id==X,X号物品增加b,如果id==X+1,X+1号物品增加b...以此类推。
好像还没有能直接变量操作物品数量的功能......

评分

参与人数 1+1 收起 理由
407005278 + 1 塞糖

查看全部评分

回复 支持 反对

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1015
在线时间
245 小时
注册时间
2011-3-5
帖子
25
3
 楼主| 发表于 2017-10-14 09:16:26 | 只看该作者
xjzsq 发表于 2017-10-13 23:35
第一个可以通过条件分歧实现(如果会写代码的话也可以仿照识别\V[N]把他转换成N号变量的形式去改脚本增加一 ...

可能之前描述的不清楚,现在改了一下。。。
回复 支持 反对

使用道具 举报

Lv5.捕梦者

梦石
0
星屑
29185
在线时间
604 小时
注册时间
2014-7-18
帖子
729

开拓者

4
发表于 2017-10-14 22:05:58 | 只看该作者
407005278 发表于 2017-10-14 09:16
可能之前描述的不清楚,现在改了一下。。。

针对第2条不如lz去官方提一下建议让他加上这个功能233
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
7417
在线时间
947 小时
注册时间
2017-9-27
帖子
583
5
发表于 2017-10-15 18:55:39 | 只看该作者
本来昨晚要回复的,但是突然断网……
楼主的问题,如果用脚本解决的话,so easy!
废话不多说,我发一个demo你看了就明白了。
使用方法:新建一个工程,把下载的压缩文件解压缩到新工程的根目录中,覆盖原文件。
随机物品_demo.rar (482.74 KB, 下载次数: 162)

评分

参与人数 3星屑 +50 +2 收起 理由
白嫩白嫩的 + 1 精品文章
余烬之中 + 50 认可答案
407005278 + 1 认可答案

查看全部评分

回复 支持 1 反对 0

使用道具 举报

Lv3.寻梦者

梦石
0
星屑
1015
在线时间
245 小时
注册时间
2011-3-5
帖子
25
6
 楼主| 发表于 2017-10-16 13:51:40 | 只看该作者
梦想家大魔王 发表于 2017-10-15 18:55
本来昨晚要回复的,但是突然断网……
楼主的问题,如果用脚本解决的话,so easy!
废话不多说,我发一个dem ...

非常有用 实在是太感谢了 抱一下大触的大腿!!
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
12157
在线时间
4435 小时
注册时间
2014-4-11
帖子
5955

开拓者

7
发表于 2017-10-16 16:36:39 | 只看该作者
要用脚本
//先设一个哈希表。:前面是任务会出现的ID,后面是这个ID要求的数量
var 任务ID列表及数量 =  {
1 : 5 , 2 : 5 , 3 : 5 , 4 : 5 , 5 : 5
}
//得到任务ID列表
var 任务ID列表 =  任务ID列表及数量.keys
//随机得到一个任务ID
var 任务ID = 任务ID列表[Math.round(Math.random() * (任务ID列表.length - 1)]
//把任务ID代入变量
$gameVariables._data[1] = 任务ID
//把任务数量代入变量
$gameVariables._data[2] = 任务ID列表及数量[任务ID]


//用习惯了脚本编辑器,经常输入完了,就点刷新。然后就没有然后了
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
351
在线时间
48 小时
注册时间
2020-8-11
帖子
56
8
发表于 2020-8-31 22:03:33 | 只看该作者
梦想家大魔王 发表于 2017-10-15 18:55
本来昨晚要回复的,但是突然断网……
楼主的问题,如果用脚本解决的话,so easy!
废话不多说,我发一个dem ...

大魔王,你在这里也有ID 啊,我从 简书 上看见你 的 ,简书上的 教程 我对着来的,一接受任务,就被直接给与物品了
回复 支持 反对

使用道具 举报

Lv4.逐梦者

梦石
0
星屑
7417
在线时间
947 小时
注册时间
2017-9-27
帖子
583
9
发表于 2020-8-31 22:24:17 | 只看该作者
本帖最后由 梦想家大魔王 于 2020-8-31 22:31 编辑
paopaolonggong 发表于 2020-8-31 22:03
大魔王,你在这里也有ID 啊,我从 简书 上看见你 的 ,简书上的 教程 我对着来的,一接受任务,就被直接 ...




抱歉,刚才看了一下我写的东西,确实是首次对话后就给你任务物品。
因为demo里面并没有提供常规的获得物品的途径,所以直接给你,让你可以体验一下交任务的流程。
时间过于久远,我自己都记不太清楚,首次回答想当然了。
回复 支持 反对

使用道具 举报

Lv2.观梦者

梦石
0
星屑
351
在线时间
48 小时
注册时间
2020-8-11
帖子
56
10
发表于 2020-9-1 10:56:51 | 只看该作者
梦想家大魔王 发表于 2020-8-31 22:24
抱歉,刚才看了一下我写的东西,确实是首次对话后就给你任务物品。
因为demo里面并没有提供常规的获得物 ...

大佬,没想到你还在这个论坛啊,荣幸至极,请问怎么能改成 不获得物品,然后自己 去找啊》??
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-4-29 03:12

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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