这里注明不同模块有啥子用, 可以按照需求使用需要的模块, 不需要的请直接删掉data/s3_def/functions下对应的(文件夹/文件)

如果需要了解结构，注意不要忽视了函数标签和进度的作用


> ticks
  提供不同顺序不同执行者触发的函数标签, 它们是正常游戏时每个gametick内始终触发的
  每种触发都包含3个人为定义的触发顺序(init, def, run)
    > tick
      一般的tick
        > entity
          as @e, 执行位置为tick(run)
        > player
          as @a, 执行位置为tick(run), 且在tick/entity后
    > advance
      进度, 执行者为每个玩家
    > schedule
      计划, 无指定的执行者
    > rcb
      不存在的, 这个执行顺序又不稳定, 而且放rcb也是个问题

> state_def < 前置: triggers(使用到了计分板s3.flag)
  定义一些状态对应的计分板
    > world
    > player
        > find
          玩家存在检测(#s3.player.find s3.flag)
        > hand
            > clock
              玩家手上拿着钟时计分板(#s3.player.hand.clock s3.flag)的值为1
    > entity
        > find
          实体存在检测(#s3.entity.find s3.flag)

> triggers < 前置: ticks
  提供各种条件下触发的函数标签
  每种触发都包含3个人为定义的触发顺序(init, def, run)
    > world
        > load
          一般的load
        > loaded
          第一次检测到玩家后触发, 检测和触发位置为tick/player(init)
    > player
        > join
          玩家每一次进入时触发, 包括第一次, 检测为计分板判据检测, 触发位置为tick/player(init), 且在loaded后
        > start
          玩家第一次进入时触发, 检测为进度检测, 触发位置为tick/player(init), 且在join后

> scb < 前置: triggers(load)
  提供基本的计分板

> dimensions < 前置: triggers
    > check
      发现新维度时设立marker, 进度触发和loaded(run)触发, 在tick/player(run)重设进度

> locations < 前置: dimensions
  提供位置的保存和读取, 支持所有实体(大概), 支持自定义维度
    > save
      将位置信息保存到(storage temp locations), 需要主动触发
    > load
      将实体传送到(storage temp locations)所指的位置, 需要主动触发


> inventories
  提供玩家物品栏的保存和读取
  修改了minecraft下的潜影盒战利品表
    > save
        > hand
          保存手上的物品
        > only
          仅保存指定格的物品
        > range
          保存slot从x开始到y的物品
        > all
          保存全部物品
        > gamemode
          保存游戏模式
    > save
        > hand
          读取手上的物品
        > only
          仅读取指定格的物品
        > range
          读取slot从x开始到y的物品
        > all
          读取全部物品
        > gamemode
          读取游戏模式






> items[tick/entity(run)]
  运行函数标签
    > ender_eye
      运行函数标签
    > lore
      是否在lore中显示保存的坐标
    > hand_save_location
      把坐标保存进手上的物品里
    > save_location
      把坐标保存进@s Item.tag.Location
    > remove
      从@s Item移除一个Count
    > show
      特效
        > tp
          传送效果
        > locate
          记录坐标的效果
        > charge
          充能的效果
        > ender_powder
          末影珍珠粉制作的效果

> compass
    > set_pos[as 指南针]
      指南针和末影珍珠在一起时合成不稳传送石(萝卜钓竿加材质)并记录坐标
    > tp[ticks/player(run)]
      右键的时候消耗50经验进行传送, 随着距离扣减血量(基础6点, 128格, 随后每翻一倍的距离扣一次6点), 背包有火药时消耗火药进行传送, 不用扣基础的6点, 但有5%几率产生苦力怕爆炸, 经验不足50时额外判定一次15%的苦力怕爆炸, 跨维度传送时100%产生苦力怕爆炸


> eye
    > refresh[as 末影之眼]
      末影之眼在age=0..1时清除休眠态, 并且清除存储的坐标(如果没附魔的话)
    > set_pos[as 末影之眼]
      当未附魔的末影之眼和恶魂之泪在一起时消耗恶魂之泪并记录坐标(加上附魔), 在砂轮上祛魔可以清除坐标
    > charge[as 末影之眼]
      当附魔的未充能的没有处于休眠状态的附魔末影之眼和烈焰粉在一起时消耗烈焰粉并进入充能状态(更改材质)
    > tp[as 末影之眼]
      当进入充能状态的末影之眼不在水里(水或含水方块或满水炼药锅)时, 执行传送, 并进入休眠态, 传送有10%的几率破碎

      
> plus
    > hand_plus_stone[ticks/player(run)]
      触发函数标签
    > player_item[hand_located_plus_stone]
        > save
          取出玩家手上的高阶传送石, 并取出充能点数
        > load
          放回去
    > show
      actionbar和声音的显示
        > act
          各种显示
        > colors
          不同数字对应的颜色
    > items
      as 物品的放在这里
        > strong[as 萝卜钓竿]
          高阶传送石的掉落物不受爆炸影响
        > create[as 哭泣的黑曜石]
          哭泣的黑曜石加烈焰棒加恶魂之泪加末影珍珠粉制作出高阶传送石
    > set_pos[hand_plus_stone]
      拿着未记录坐标的高阶传送石右键会记录坐标(加上附魔), 在砂轮上祛魔可以清除坐标
    > charge[hand_located_plus_stone]
      主手高阶传送石,副手烈焰棒/粉, 按shift可以进行充能, 烈焰棒2点, 烈焰粉1点
        > force_tp[hand_located_plus_stone]
          当充能程度达到129时会消耗所有能量强制传送并在目的地产生一个巨大的爆炸
    > tp[hand_located_plus_stone]
      拿着充能程度大于等于3点的高阶传送石右键执行传送, 消耗3点充能程度
    > forget[hand_located_plus_stone]
      当高阶传送石能量耗尽时, 遗忘传送点
    > refresh
      当手上的高阶传送石没有记录坐标的附魔时, 清除坐标和lore
