泰拉瑞亚是一款非常经典的沙盒游戏在这款游戏中玩家可以刷怪打装备,同时还需要建立自己的基地,保证NPC的安全,最近有玩家放出了饰品的制作方法,下面是详细解析。
饰品制作方法:
基础篇:饰品创建
一个mod道具需要有json文件和png文件嘛~
png就不多说了,图片,不要找太大的就行了,反例请参见ctx的just a simple boss里的BOSS召唤物——骷髅下巴,因为直接用了骷髅下巴的图,太大,捡起来放在物品栏的时候缩得不成样子
当然还有一点:背景色必须是透明,比如:
下面是json的写法:以刚写的ctxmove作范例:
{
"code": "ctxmove",——名字,要和json的文件名一致
"displayName": "CTX's Movement",——显示名称,最好区分大小写以显得很正式
"size": [28,14],——尺寸,两个数字分别对应png图像的长和宽
"value": [0,0,0,0],——价值,四个数字分别对应铂、金、银、铜币的数量(注意这里是买入价值,卖出时会有折扣,使用打折卡买入也会有折扣)
"rare": 9,——稀有度,⑨就是最稀有的天蓝了好像
"toolTip": "I hate json.",——第一行道具说明(想加第二行就是toolTip2)
"accessory":true,——这句是重点,它决定了这个道具可以被塞进饰品栏
"recipes": [——合成表
{
"items": ["0 Wood"],——用0个木头
"creates": 1——合成1个饰品
}
]——这里的recipe明显不合格好吧!连tile也没有——嘛,这不是重点
}
此外,还可以加一些附加的语句,比如"wings":12,让玩家佩戴后获得蒸汽朋克翅膀,"lifeRegen":增加回血速度,"defense":加防御,好像也就这些了。
进阶篇:cs创建
写一个和png以及json相同名字的cs文件
首先,在里面写:
using System;
using TAPI;
using Microsoft.Xna.Framework.Graphics;
namespace TAPI.【MOD名称】{
public class 【道具名称】:ModItem{
public 【道具名称】(ModBase modbase,Item i):base(modbase,i){}
public override void Effects(Player p){
//等会就是在这里插入饰品信息滴~
}
}
}
那些【mod名称】和【道具名称】需要换成什么,就看实际情况和个人喜好了……顺便:【道具名称】也要和文件名一样
然后嘞……这个Effects究竟能干什么?答案:几乎所有!一个玩家能干的事!
看见后面括号里那个Player p了么?这代表接下来Effects里发生的一切事情,都将施予那个代号为p的玩家——也就是带上这个饰品的玩家~(当然那个p改成player,ctx,lzw神马的都行,只是切记要和后面保持一致)
至于Effects究竟能干啥嘛……先来几个基本的吧:
首先是对玩家身上的数据进行操作
写p.statLifeMax=500;就是玩家佩戴时生命最大值将瞬间飙到500
p.statManaMax=200;同理,玩家最大魔法值飙到200
p.statManaMax2=+200;这个就像一般的法师饰品一样暂时增加了玩家的最大魔法,卸掉饰品就会还原(而前两个不会)
p.wings = 12;给玩家戴上蒸汽朋克翅膀
p.statDefense+=233;玩家防御增加233
p.lifeRegen+=233;玩家回血速度增加233(再注:这里的回血速度最大也只能增加到每秒一点,是TR原版回血机制的问题)
当然,还有很多……