• 注册
  • Mod教程 Mod教程 关注:1189 内容:48

    自定义rwsave第二节

  • 查看作者
  • 打赏作者
  • Lv4
    2022

    多人获取包含tmx的rwsave,存在名称以及投降系统异常,或许你可以通过沙盒保存,进行gzip修正。

    想要使用dex内单位,可以依赖于指令版和action。

    .startingunits path 设置初始单位json

    由于丢失使用文档,以下json存在错误,仅供参考。

    {“unit”:{

    “name”:”tank”,

    //单位名称,键非name

    “hp”:”100″,

    “maxHp”:”100″,

    “shield”:”100″,

    “maxShield”:”100″,

    “armour”:”100″

    //装甲不能保存

    “amount”:”2″

    //数量

    “x”:”0″,

    //也许 xyz不需要使用””

    “y”:”0″,

    “z”:”0″,

    //或许是height

    “attachments”:[“unit”,”tank”]

    /*附属,键可能非attachments

    也许未定义的tank:{}不能使用

    {[“unit”,”tank”]}

    可能需要大括号*/

    }}

    spawnUnits:laserDefence(addResources=hp:NaN|energy:NaN)

    convertTo:Tank

    通过convertTo来生成dex单位,NaN将变更max>=0

    定义高度

    startingHeightOffset:NaN

    offsetSelfAbsolute:0,0,NaN

    spawnUnits:unit(offsetHeight=NaN)

    移动方式对z/height表现

    NaN

    不使用targetHeightDrift,非AIR,dex不使用targetHeightDrift

    单位表现无,无法选择,判定陆地,负方向,接受范围伤害。

    dex建筑表现正常,单位则仅影子,判定不变。

    Infinity 仅dex

    使用float极限值,这对targetHeightDrift表现为下降一定时间后复位。

    使用了heightChangeRate以及dex内单位,高度变化将是线性的,这可能需要非常长或无限的时间来复位。

    单位表现仅影子,无法选择,判定空中,dex不变,接受范围伤害。

    -Infinity 

    不使用targetHeightDrift,非AIR

    单位表现无,无法选择,判定潜水,dex不变。

    其它同Infinity

    注解:

    无法直接选择,你可以选择另一个单位来选择它。

    特殊值使得非命中抛射体永远也打不打它。

    想要在岩浆等地块放置特殊高度,可能需要如下。

    a AIR 生成b

    b LAND z:NaN

    绝对xy

    altNames:unit

    spawnUnits:unit(offsetX=NaN,offsetY=NaN)

    offsetSelfAbsolute:NaN,NaN,0

    但它们仅处理3特殊值

    使用付点数精度损失也是一个方案,这里取临近值3E38,当然你也可以使用极限值

    [hiddenAction_0]

    autoTriggerOnEvent:created

    offsetSelfAbsolute:3E38,3E38,0

    [hiddenAction_1]

    autoTriggerOnEvent:created

    offsetSelfAbsolute:-3E38,-3E38,0

    [hiddenAction_2]

    autoTriggerOnEvent:completeAndActive

    offsetSelfAbsolute:100,100,0

    待续…

    作业:

    [LaserTank]

    x:100

    y:100

    z:NaN

    hp:NaN

    提示:LaserTank不是c_laserTank


    “点赞是美意,打赏是鼓励”


    Lv4
    2022
    答案:
    [hiddenAction_0]
    autoTriggerOnEvent:created
    offsetSelfAbsolute:3E38,3E38,0
    [hiddenAction_1]
    autoTriggerOnEvent:created
    offsetSelfAbsolute:-3E38,-3E38,0
    spawnUnits:LaserTank(offsetX=100,offsetY=100,offsetHeight=NaN,addResources=hp:NaN)
    deleteSelf:true
    实际上action2可以用created,使用completeAndActive,可以用于对一些逻辑的判断,如-1000,-1000处的沙盒建造者。
    回复
    Lv10
    爱你所爱
    打赏了2888铁锈币
  • 安逸奢侈啊
    拉黑 2年前 手机端回复
  • 陌陌@安逸 这叫支持教程作者
    拉黑 2年前 手机端回复
  • 回复
    Lv11
    瑶妹
    我之前是写过一个无模块化的开局json
    {
    "8tank": {
    "type": "Unit",
    "name": "tank",
    "amount": 8,
    "maxhp" : 210,
    "hp": 210,
    "y": 180,
    "x": 0
    },
    "4heavy": {
    "type": "Unit",
    "name": "heavyTank",
    "amount": 4,
    "y": 140,
    "hp": 600,
    "maxhp": 600,
    "x": 0
    },
    "4hin": {
    "type": "Unit",
    "name": "heavyInterceptor",
    "amount": 4,
    "y": 60,
    "hp": 150,
    "maxhp": 150,
    "x": 0
    },
    "center": {
    "type": "Unit",
    "name": "commandCenter",
    "amount": 1,
    "maxhp": 4000,
    "hp": 4000
    },
    "4basic": {
    "type": "Unit",
    "name": "mechGun",
    "amount": 4,
    "y": -80,
    "maxhp": 500,
    "hp": 500,
    "x": 0
    },
    "engineerA": {
    "type": "Unit",
    "name": "combatEngineer",
    "amount": 1,
    "x": -40,
    "maxhp": 2000,
    "hp": 2000,
    "maxshield": 1000,
    "shield": 1000,
    "y": -120
    },
    "engineerB": {
    "type": "Unit",
    "name": "mechEngineer",
    "amount": 1,
    "x": 40,
    "maxhp": 2000,
    "hp": 2000,
    "maxshield": 1000,
    "shield": 1000,
    "y": -120
    }
    }
    回复
    Lv4
    2022
    特殊值具有传染性,会使生成的非建造单位、被装载的单位受到感染,但单位表现不同,详细待补充。
    回复
    Lv1
    真是想不到还能在这里看见我的指令版
  • 肉了看好友动态看到的
    拉黑 2年前 电脑端回复
  • 回复

    请登录之后再进行评论

    登录
    教程分享
  • 今日 0
  • 内容 115
  • 关注 1189
    • 大版主
    • 小版主
  • 安逸
    安逸
    我的名字叫陈xx,今年10岁了
  • 暂没有数据

  • 任务
  • 动态
  • 底部
  • 帖子间隔 侧栏位置: