Project1

标题: 关于送礼物与好感度用事件怎么写 [打印本页]

作者: 糖分战士    时间: 2023-6-30 20:49
标题: 关于送礼物与好感度用事件怎么写
想做一个这样感觉的系统:
从各种渠道获取不同的物品,然后打开物品栏自选想送的物品送给npc,根据送的物品不同npc上涨的好感度也不一样
例如物品1 +2好感 物品2 -1好感这样的
嗯就是星露谷里npc送礼的那种感觉←

试着用事件的物品选择处理写了下,但是好像物品使用没办法和具体的不同变量(不同好感度)关联?还是我太蠢了没get正确写法


如果有适合使用的脚本也欢迎推荐!(虽然感觉没有……

作者: resty    时间: 2023-6-30 22:52
本帖最后由 resty 于 2023-6-30 22:58 编辑

现写一个脚本,假设物品选出来存在变量1,好感度在变量2,开关1表示选择的物品是否有效
在礼物的备注里面写上 HAOGAN: 3,之后就可以使用了



  1. let ITEM_VAR_ID = 1;
  2. let TARGET_ID = 2;
  3. let SWITCH_ID = 1;
  4. let v = $dataItems[ITEM_VAR_ID].note.match(/Haogan: ([+-]?[0-9])+/)
  5. if (v) {
  6.    $gameVariables.setValue(TARGET_ID, $gameVariables.value(TARGET_ID) + parseInt(v[1]));
  7.    $gameParty.gainItem($dataItems[$gameVariables.value(1)], -1);
  8.    $gameSwitches.setValue(SWITCH_ID, true);
  9. } else {
  10.    $gameSwitches.setValue(SWITCH_ID, false);
  11. }
复制代码



作者: Bernstein    时间: 2023-7-2 23:14
我不懂得JS,技术也比较菜。但我觉得引擎本身就足以编写这样的事件。
例如在数据库中,把物品编号101~151设定为可以赠送的道具。则定义一个变数,代入“上次使用的物品编码”,系统就能知道刚刚送出的物品编号。
此时做个分歧,当变数为101~106,好感度+5,获赠者的台词是“我好感动啊”;107~112,好感度+3,获赠者的台词“谢谢你,想要这个很久了”……
一直到135~151,好感度变成不同程度下降,获赠者台词也变得嫌弃厌恶。
这样做的话,甚至可以根据不同角色的性格、背景设定,而设置不同的好恶区间和不同的台词。

多年菜鸟,言有未尽之处,诸君见笑。




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1