ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
>[danger] 拓展的技能在物品内,玩家本体内都可以使用 <br><br><br> # 装备/宝石使用方法 > 可以利用[[工具类]QuickTools](%E7%B1%BB%E6%96%B9%E6%B3%95/QuickTools.md)创建一个 [[拓展技能]SkillLv](%E7%B1%BB%E6%96%B9%E6%B3%95/SkillLv.md) 下面方法都可以 ``` SkillLv skill = QuickTools.createSkill(5,"技能1","技能2"); ``` ``` SkillLv skill = QuickTools.createSkill().setLevel(5).addSkill("技能1","技能2"); ``` ``` SkillLv skill = QuickTools.createSkill().setLevel(5).addSkill("技能1").addSkill("技能2"); ``` <br> 可以在[物品生成时添加](%E7%89%A9%E5%93%81%E7%94%9F%E6%88%90%E6%97%B6%E6%B7%BB%E5%8A%A0.md) <br> 也可以在[简单强化](%E5%A4%A7%E9%87%8F%E4%BE%8B%E5%AD%90/%E4%BD%9C%E8%80%85%E5%8F%91%E5%B8%83/%E7%AE%80%E5%8D%95%E5%BC%BA%E5%8C%96.md)里面给物品添加 <br> # 或者任意能调用到装备/宝石的地方: ``` #只要能拿到装备/宝石的地方 ItemObject inter = 从某处拿到的对象; ExtendData extend = inter.getData("extend"); //就可以拿到其拓展数据,固定写法 SkillLv skill = QuickTools.createSkill(5,"技能1","技能2"); extend.set("类型1","技能",skill); //直接设置进去完事了 //如果是GUI操作的话, 还需要 inter.render(); //重新渲染一下物品排版 ``` <br> 找到你这个装备/宝石对应的[模板](../%E7%89%A9%E5%93%81%E6%98%BE%E7%A4%BA%E6%A8%A1%E6%9D%BF/%E8%A3%85%E5%A4%87%E6%A8%A1%E6%9D%BF%E7%9A%84%E4%BD%BF%E7%94%A8.md) >[danger] 使用了拓展数据要显示的话,推荐使用新版java模板模式,目前也必须使用java模板显示QAQ 这里用[装备模板](../%E7%89%A9%E5%93%81%E6%98%BE%E7%A4%BA%E6%A8%A1%E6%9D%BF/%E8%A3%85%E5%A4%87%E6%A8%A1%E6%9D%BF%E7%9A%84%E4%BD%BF%E7%94%A8.md)做为例子 ## 把这一段直接复制进去: ``` static void 铭刻技能显示(List list, ItemObject inter) { ExtendData extend = inter.getData("extend"); //固定写法 //用之前需要判断一下是否存在,因为不是所有装备都可能有上面创建的属性 if(!extend.has("类型1","技能")) { //没有的话就直接返回不显示在装备上 //又或者你可以添加一个空行或者默认的文本 //list.add(""); //list.add("&b未有铭刻技能"); return; } SkillLv 技能 = extend.get("类型1","技能"); //QuickTools.createSkill(5,"技能1","技能2"); 为例 //由于技能是有多个的,可以以2以方法显示 //这里就以第二种显示吧 /* '&b铭刻技能: &f技能1,技能2技能等级提升 &c5' */ /* '&b铭刻技能: ' '&f技能1等级提升 &c5' '&f技能2等级提升 &c5' */ list.add("&b铭刻技能: "); //先添加第一行固定写法 Collection 技能列表 = 技能.allSkills(); //拿到所有技能 //利用for循环遍历里面所有技能ID for(String 技能ID : 技能列表){ list.add(技能ID + "等级提升 &c" + 技能.getLevel()); //组合字符串把技能全部以 '{skill}等级提升 &c{level}' 的格式添加到lore里面 } ``` <br><br><br> ## 之后在这一块添加: ``` static List equipLore(UMap data) { List list = new ArrayList(); ItemObject inter = data.get("inter"); //绑定类型的显示名称 addBind(list, inter); //归属者 addAuthor(list, inter); //门派 addOcc(list, inter); //等级 addLevel(list, inter); //部位 addType(list, inter); //品质 addQuality(list, inter); //售价和评分 addSell(list, inter); 铭刻技能显示(list,inter); // <============= 放到这就显示在评分 和 基础词条的中间了 //要怎么排版可以自己随意, 也可以不显示某些内容 ,直接加//注释掉就或删掉 //如: //addSell(list, inter); 模板就不会显示 售价和评分了 //基础词条 addBasicEntry(list, inter); //随机词条 addRandomEntry(list, inter); //宝石孔数以及宝石 addGems(list, inter); //装备描述 addIntroduce(list, inter); return list; } ```