饥荒联机版Mod开发——衣服(十一)
饥荒联机版Mod开发——衣服(十一)
- 前言
- 总览与下载
- modmain
- prefab
- 动画
前言
饥荒里面装备栏有三个地方,手,身体,头。上一期我们讲了戴头上的帽子,这期我们讲讲穿在身上的衣服。事实上,衣服的代码比帽子的简单点,不过需要的贴图会多点。
总览与下载
源文件已添加到mods/~myclothes.zip中
饥荒联机版开发
https://pan.baidu.com/s/1_-TPRdo86z8PNwK084N_3A?pwd=oc74
modmain
modmain,modinfo这些和往常的一样即可,没什么需要特别注意的地方。
GLOBAL.setmetatable(env,{__index=function(t,k) return GLOBAL.rawget(GLOBAL,k) end}) PrefabFiles = {"myclothes"
}STRINGS.NAMES.MYCLOTHES = "我的衣服"
STRINGS.CHARACTERS.GENERIC.DESCRIBE.MYCLOTHES = "虽然是木甲的图"
prefab
核心代码如下,其中 equippable 组件是可装备物品的核心,在设置的装备/卸载回调函数中替换玩家的贴图。其他组件自由组装即可。其中注释掉那些是可选的
local assets =
{Asset("ANIM", "anim/myclothes.zip"), --动画Asset("IMAGE", "images/inventoryimages/myclothes.tex"), --物品栏贴图Asset("ATLAS", "images/inventoryimages/myclothes.xml"),
}local function onequip(inst, owner)owner.AnimState:OverrideSymbol("swap_body", "myclothes", "swap_body")
endlocal function onunequip(inst, owner)owner.AnimState:ClearOverrideSymbol("swap_body")
endlocal function fn()local inst = CreateEntity()inst.entity:AddTransform()inst.entity:AddAnimState()inst.entity:AddNetwork()--物品栏类型的物理碰撞MakeInventoryPhysics(inst)--动画inst.AnimState:SetBank("myclothes")inst.AnimState:SetBuild("myclothes")inst.AnimState:PlayAnimation("anim")--可漂浮MakeInventoryFloatable(inst)inst.entity:SetPristine()if not TheWorld.ismastersim thenreturn instend--可检查inst:AddComponent("inspectable")--物品栏显示inst:AddComponent("inventoryitem")inst.components.inventoryitem.imagename = "myclothes"inst.components.inventoryitem.atlasname = "images/inventoryimages/myclothes.xml"--[[燃料inst:AddComponent("fuel")inst.components.fuel.fuelvalue = TUNING.LARGE_FUEL--]]--[[自然,火传递MakeSmallBurnable(inst, TUNING.SMALL_BURNTIME)MakeSmallPropagator(inst)--]]--[[护甲inst:AddComponent("armor")inst.components.armor:InitCondition(TUNING.ARMORWOOD, TUNING.ARMORWOOD_ABSORPTION) --:InitCondition(amount, absorb_percent)--]]--可装备inst:AddComponent("equippable")inst.components.equippable.equipslot = EQUIPSLOTS.BODY--[[inst.components.equippable.dapperness = TUNING.DAPPERNESS_SMALL --装备回san值inst.components.equippable.walkspeedmult = 2 --装备后移速倍率--]]inst.components.equippable:SetOnEquip(onequip)inst.components.equippable:SetOnUnequip(onunequip)--可作祟--MakeHauntableLaunch(inst)return inst
endreturn Prefab("myclothes", fn, assets)
动画
衣服的动画其实也很简单,因为用的是替换贴图,所以我们只需要准备对应的图片,以及一个扔地上的动画即可。
先来看下木甲的图是什么样的,其中左边是木甲的图,右边是温蒂身体部分的图。
前三张对应正面,之后三张是侧面,再之后三张是后面的。
剩下两张分别是编号11和编号13的,编号11的不知道哪里用到,编号13的是作为地面上的图片使用的,他们的编号都在10以上,也就是替换贴图的时候不影响具体的显示。
再来看看scml,老样子先设置下锚点,编号1-10的锚点位置的设置会影响穿在身上的效果,可以多调几次,然后进游戏看看效果。
最后一张编号13的作为地面上的贴图,动画就一个,把图片拖进来,然后改下右下角的名字即可(对应代码里的)
饥荒联机版Mod开发——衣服(十一)相关推荐
- 饥荒联机版Mod开发——两种帽子(十)
饥荒联机版Mod开发--两种帽子(十) 前言 总览与下载 动画 代码 modmain 露头类帽子 基本的预设物框架 穿戴 可交易 腐烂及可放冰箱 总的代码 不露头类帽子 差异 基本代码 耐久 其他功能 ...
- 饥荒联机版Mod开发——配置代码环境(二)
饥荒联机版Mod开发--配置代码环境(二) 前言 下载VS Code和Lua插件 建立工作区 配置Lua插件 Git和GitHub(可选) 排除多余文件 删除scripts里多余文件 VS Code快 ...
- 饥荒联机版Mod开发——准备工具(一)
饥荒联机版Mod开发--准备工具 前言 工具下载 工具功能和使用 动画 c_start:反解压动画 Sprite:制作动画 打包工具:把动画再打包回去 贴图 TEXTool:查找/反解压tex tex ...
- 饥荒联机版Mod开发——modmain(五)
饥荒联机版Mod开发--modmain(五) 前言 modmain环境 常用方法 设置环境具体流程 mods.lua modutil.lua 传送门 前言 在modmain中我们可以通过 Prefab ...
- 饥荒联机版Mod开发——Class, Prefab, component,debug(四)
饥荒联机版Mod开发--class, prefab, component,debug(四) Class的使用方法 Prefab component Entity Component Normal Co ...
- 饥荒联机版Mod开发——常用inst方法(八)
饥荒联机版Mod开发--常用inst方法(八) 前言 生成实体 监听/推送事件 使用标签 增删组件 网络组件 定时/阶段任务 回调函数 父子实体 平台 删除 位置,角度 显示/隐藏 判断 大脑 状态图 ...
- 饥荒联机版Mod开发——制作烹饪锅食物(六)
饥荒联机版Mod开发--制作烹饪锅食物(六) 前言 准备工作 编写菜谱 制作预设物 添加菜谱 传送门 前言 核心组件及其流程如下: 材料 -> 烹饪锅(stewer) -> 食物(吃edi ...
- 饥荒联机版Mod开发——制作可入锅,烹饪,凉干的食物(七)
饥荒联机版Mod开发--制作可入锅,烹饪,凉干的食物(七) 可入锅 可烹饪 可凉干 传送门 可入锅 参考:cooking.lua 先来看一下官方代码 --names:{"prefab1&qu ...
- 饥荒联机版服务器mod模组在哪个文件夹,饥荒联机版MOD使用图文教程_饥荒联机版MOD怎么用_牛游戏网...
饥荒联机版相信大家都玩得不亦乐乎,在饥荒中使用MOD也是一大乐趣,不少萌新可能还不知道饥荒联机版怎么使用MOD,饥荒联机版MOD要怎么安装使用呢,下面小编就为大家带来了饥荒联机版MOD使用图文教程,给 ...
最新文章
- 构建安全的 ASP.NET 网页和控件
- 会议室管理前端页面_福州会议室钟联系方式
- spring源码分析之spring-core总结篇
- tf.truncated_normal的用法
- matlab 柴油机仿真,用MATLAB/SIMULINK实现柴油机及其控制系统的动态仿真
- python 基因序列提取_科学网—简单的Python脚本提取对应位置基因序列(fasta文件) - 王彬忠的博文...
- 苹果小圆点怎么弄出来_原来苹果手机轻点2下屏幕就能截图,以前还不知道,太方便了...
- 交通运输业面临视频监控存储挑战
- 【渝粤教育】国家开放大学2018年春季 0064-21T20世纪欧美文学 参考试题
- linux 中特殊权限,Linux SetGID(SGID)文件特殊权限用法详解
- 课题申报书范文_2018年课题立项申报书范文
- 计算机上的英语键代表什么,键盘上的英文键代表什么意思
- Oracle LiveLabs实验:Application Continuity Fundamentals
- perf常用用法简介
- ppt中只有声音没有图像处理
- 直播弹幕系统(五)- 整合Stomp替换原生WebSocket方案探究
- 腾讯+字节+阿里面经真题汇总,总结到位
- 实习日记——Day2
- 关于pip安装virtualenv虚拟环境出现的Permission denied问题及虚拟环境安装步骤
- 一天一问01:DMZ区什么意思?