欢迎来到THBWiki!
如果您是第一次来到这里,请点击右上角注册一个帐户
有任何意见、建议、求助、反馈都可以在
讨论板
提出
THBWiki以专业性和准确性为目标,如果你发现了任何确定的错误或疏漏,可在登录后直接进行改正
查看“脚本对照表/MUAECL”的源代码
←
脚本对照表/MUAECL
跳到导航
跳到搜索
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于该用户组的用户执行:
少女
您必须确认您的电子邮件地址才能编辑页面。请通过
参数设置
设置并确认您的电子邮件地址。
您可以查看和复制此页面的源代码。
{{资料头部}} ===概述=== 请至少先了解ecl为何物。[/../ECL 点这里] 为应对ecl汇编似的语言结构,表达式需要堆栈运算,记不住的数字指令等一系列缺点,MUA组{{color:gray|少量}}参照了zun在[/../ZUN/游戏的修罗场6 某次访谈]中给出的zun所使用的脚本,<s>编写了一个相对较好使用的ecl语言</s>准备编写一套新的MUAECL2.0。 目前暂时以辉针城和绀珠传为基础。以后会用不同颜色加入对于其余作品的支持。 想下载MUAECL的脚本翻译器请加入MUA组(如想加入在此版块回复即可) [[/MUAECL基本规范|MUAECL基本句法结构]] ===Instruction表=== Instruction有 ins_xx(arg1,arg2,arg3.。。。) 表示,其中xx代表Instruction的编号,不同编号有不同的功能, 每个Instruction需要的参数也不同/ 下表展示了各种Instruction的功能 Instruction大致可以分为 5大类 即运算和系统,贴图和创建单位, 移动,单位属性,弹幕相关 以下每个ins,格式为名字 编号 作用详解 ===系统和运算=== begin() 0 空指令,main开始调用一次 end() 1 大return,会清除当前单位 return() 10 小return,返回到调用这个过程的地方,不清除当前单位 ins_11(CString Subroutine,member 1,member 2.....) 调用过程,若有需要传递参数,必须要在整数前加上_SS,浮点数前加上_ff,在子线程结束后返回 {{color:red|已废}} 请直接调用。 ins_12(label,int b),{{color:red|已废}} ins_13(label,int b),{{color:red|已废}} ins_14(label,int b),{{color:red|已废}} 12-14三者皆为goto 到对应label处,b为时间值。 12为无条件goto 13 if条件用goto 判断当前栈顶是否为0 如果是0,则执行,不是0则不执行. 14 循环用goto 判断当前栈顶是否为1,如果是1,就执行 {{color:red|已废}}请直接使用Jmp,Jz,Jnz ins_15(CString Subroutine,member 1,member 2.....) 在当前单位创建一个ID为-1的子线程,并行运行 {{color:red|已废}}请直接调用 thread(CString Subroutine,int id) 16 在当前单位创建一个子线程,并行运行 term(int id) 17 关闭16的子线程 simu_term(int) 802 参数为0,立即击破场上boss当前阶段(用于多boss同台时,击破一个boss时另一个boss也同时击破,例hzcex道中2,3符) {{color:red|ins_21() ???}} ins_22(anything) zun debug用,release版本是空指令 wait(int time) 23 等待xx帧。可以使用冒号,使用冒号之后会变成548。 ins_40(int size) 分配局部变量用,等价于Var ins_41 销毁40分配的局部变量 pushI(int) 42 整数写入堆栈顶; popI(int) 43 将运算结果储存到变量中。相当于等号, 即 pushI(5); popI(C); 等价于 C=5; pushF(float) 44 pushI的浮点数版本 popF(float) 45 popI的浮点数版本 运算符号表 ins_50 开始至ins_69为各种基础运算,相同功能的一对中,第一个为整数版本,第二个为浮点数版本 {{color:red|不建议使用,请直接用运算}} {| class="wikitable" |- ! 名字 !! 编号 !! 作用 !! 名字 !! 编号 !! 作用 !! |- | operator_add_int || 50 || + || operator_add_float || 51 || + |- | operator_sub_int || 52 || - || operator_sub_float || 53 || - |- | operator_mul_int || 54 || * || operator_mul_float || 55 || * |- | operator_div_int || 56 || / || operator_div_float || 57 || / |- | operator_mod || 58 || mod || - || - || - |- | operator_equal_int || 59 || == || operator_equal_float || 60 || == |- | operator_notequal_int || 61 || != || operator_notequal_float || 62 || != |- | operator_less_int || 63 || < || operator_less_float || 64 || < |- | operator_lessequal_int || 65 || <= || operator_lessequal_float || 66 || <= |- | operator_large_int || 67 || > || operator_large_float || 68 || > |- | operator_largeequal_int || 69 || >= || operator_largeequal_float || 70 || >= |- | operator_not_int || 71 || ! || operator_not_float || 72 || ! |- | operator_or_logic || 73 || <poem>||</poem> || operator_and_logic || 74 || && |- | operator_xor_bit || 75 || ^(xor) || operator_or_bit || 76 || <poem>|</poem> |- | operator_and_bit || 77 || & || - || - || - |- | operator_sin || 79 || sin || operator_cos || 80 || cos |- | operator_minus_int || 83 || (-) || operator_minus_float || 84 || (-) |- | operator_sqrt || 88 || sqrt || - || - || - |} dec(int i) 78 将i自减并塞入堆栈。配合Jnz用于控制循环次数。 pol_to_right(float A,float B,float x,float y) 81 A=ycosx ,B=ysinx normalize(float A) 82 +-π的整数倍以至于A落入(-π,π)这个区间 sqrsum(float A,float x,float y) 85 A=x平方+y平方 right_to_dist(float A,float x,float y) 86 A平方=根号(X平方+y平方) right_to_ang(float %A,float x1,float y1,float x2,float y2,) 87 计算点(x1,y1)至点(x2,y2)的方向并存入浮点变量A中 ang_aim(N,float x,float y) 623 计算点x,y到自机到角度并存入N中 ins_89(float A, float x float y) A=y-x ins_90(float A,float B,float x,float y,float z) {{color:red|A=?? B=??}} ins_91(int A,float B,int c int d,float x,float y) 执行代码之后的c帧内,将%B由x变化到y,变化的曲线的参数为A和D ins_92(int A,float B,int c int d,float x,float y,float m,float n) {{color:red|?????}} ins_93(float A,float B,float x,float y) 根据x和y,分别赋予A,B一个随机数,和正态分布相关 例若a=b,则随机范围是-a<A<a, 呈两边概率大于中间 若a=0则则随机范围是-b<A<b,呈两边概率小于中间 若b=0则则随机范围是-2a<A<2a,呈两边概率小于中间 ===设置贴图,播放特效动画,创建单位=== 这些obj型的指令,在创建单位的时候会自动执行与该单位同名的sub。 obj("xxx", float x, float y, int life, int bonus, int item) 300 以相对召唤者为基准点在位置xy,创建一个单位xxx,设置血量,分数以及基本掉落。 objAbs("xxx", float x, float y, int life, int bonus, int item) 301 在绝对位置xy,创建一个单位xxx,设置血量,分数以及基本掉落。用于boss objRvs("xxx", float x, float y, int life, int bonus, int item) 304 和obj的基本功能一样,但是移动方式为左右镜像。 objRvsAbs("xxx", float x, float y, int life, int bonus, int item) 305 和objAbs的基本功能一样,但是移动方式为左右镜像。 objRei("xxx", float x, float y, int life, int bonus, int item) 309 用于增员(boss存在时不执行),其余和obj一样 objReiAbs("xxx", float x, float y, int life, int bonus, int item) 310 用于增员,其余和objAbs一样 objReiRvs("xxx", float x, float y, int life, int bonus, int item) 311 用于增员,其余和objRvs一样 objReiRvsAbs("xxx", float x, float y, int life, int bonus, int item) 312 用于增员,其余和objRvsAbs一样 anim_file(int) 302 选择ANM文件。一般来说0即是Bullet.anm,1即是Enemy.anm,2开始就是当面的boss相关anm layer_set(int layer,int a) 303 在相应layer上,设置单位贴图,a对应由上一个302选择的ANM文件中的SCRIPT号 若使用529则单位不会因为左右移动而改变贴图 layer_set_mov(int layer,int a) 306 在相应layer上,设置单位贴图,a对应由上一个302选择的ANM文件中的SCRIPT号 若使用306且layer 0,则单位会因为左右移动而改变贴图 a为静止贴图,a+1,a+2为向左,右走,a+3,a+4为左面回来,右面回来 若layer不为0,则和303无区别. anim_at_file(int a,int b) 307 在单位当前位置播放ANM文件a的第b个动画效果,b对应由上一个302选择的ANM文件的 script号 anim_at0_file(int a,int b) 308 在左上角播放ANM文件a的第b个动画效果,b对应由上一个302选择的ANM文件的 script号 anim_at(int a) 313 在单位当前位置播放之前选择的ANM文件的第a个动画效果,a对应由上一个302选择的ANM文件的 script号 {{color:red|ins_314(int a, b)}} {{color:red|ins_315(int a, b)}} {{color:red|anim_at2(int a, b)}} {{color:red|ins_317(int a, b)}} restore_anime_flag() 318 重置动画相关,移除单位作用移动时贴图变化的flag layer_rot(int layer,float b) 319 旋转在相应layer的贴图至b方向。 layer_offset(int layer,float x,float y) 320 用于改变layer位置贴图的位置 x和y maple("MapleEnemy", 0, 0, 100, 1000, 0) 321 插入mapleenemy专用 {{color:red|ins_322(int a,int b)}} {{color:red|ins_323(int a,int b)}} {{color:red|ins_324()}} layer_RGB(int layer,int R,int G,int B) 325 设置贴图颜色,若RGB为255 255 255(白),则维持原颜色 {{color:red|ins_326(int layer,int a,b,c,d,e,f)}} {{color:red|ins_327(int layer,int a)}} layer_RGB_trans(int layer,int R,int G,int B) 328 设置颜色透明度,若RGB为255 255 255,则100%原图显示 layer_zoom(int layer,float lengthrate,float widthrate) 329 设置单位位于layer的贴图的大小比例,1.0f为正常大小,替换anmins里的402等anmins设置的倍数 layer_zoom_chg(int layer,int time,int mode,float lengthrate,float widthrate) 330 time帧内改变单位位于layer的贴图的大小比例为lengthrate,float widthrate. layer_zoom_add(int layer,float lengthrate,float widthrate) 335 设置位于layer的贴图的大小比例,1.0f为正常大小,与anmins里的402等anmins设置的倍数叠加 {{color:red|ins_331(int layer,int a)}} {{color:red|ins_332(int layer,int a,b,c)}} {{color:red|ins_333(int layer,int a,b.float c,d)}} anim_obj(int a) 334 播放单位的动画效果,神灵庙娘娘的邪魂球附近的雷电效果使用 ins_336 绀珠传中出现 ins_337 绀珠传中出现 ===单位移动=== 每一个单位都有三套坐标. 即最终实际坐标,绝对坐标以及相对坐标,任何时候最终实际坐标=绝对坐标+相对坐标 单位被创建出来时,那个坐标即是绝对坐标,初始相对坐标为(0,0) 所有移动相关函数都是一对一对的 基本功能相同以外,第一个是改变绝对坐标,第二个改变相对坐标 mov(float x,float y) 400 改变目标坐标为x,y. mov_chg(int time,int mode,float x,float y) 401 将目标移动到,x,y位置.持续time帧,mode为移动方式 mov2(float x,float y) 402 和mov成对 mov_chg2(int time,int mode,float x,float y) 403 和mov_chg成对 spd(float direction, float speed) 404 设置移动方向以及速度 spd_chg(int time, int mode, float direction, float speed) 405 改变移动方式为某个方向以某个速度移动移动。改变时间为time 改变方式为mode mode有四种 0---线性 1----加速 4----减速 9----平滑 spd2(float direction, float speed) 406 和spd成对 spd_chg2(int time, int mode, float direction, float speed) 407 和spd_chg成对 mov_cir(float θ,float speed,float radius,float,rspeed) 408 使单位进行圆周运动,曲线的极坐标(原点为单位之前的位置)(radius,θ) θ的增速为speed,radius增速为 rspeed mov_cir_chg(int time,int mode, float speed, float radius, float rspeed) 409 time帧之内改变单位圆周运动的参数,方式为mode.各参数参考mov_cir mov_cir2(float θ,float speed,float radius,float,rspeed) 410 和mov_cir成对 mov_cir_chg2(int time,int mode, float speed, float radius, float rspeed) 411 和mov_cir_chg成对 mov_ran(int time,int mode,float speed) 412 目标向随机点移动一次,持续time帧,速度为speed,移动方式为mode。mode和405相同 mov_ran2(int time,int mode,float speed) 413 和mov_ran成对 mov_to_boss() 414 将单位移动至boss的位置,此函数若在无boss时使用会导致严重误访问而爆炸 mov_to_boss2() 415 和mov_to_boss成对 {{color:grey|mov_z(float x,float y,float height) 416 瞬间移动到与当前位置偏移x,y的位置,并且改变单位深度,此深度只适用于风神录(296)四面的潜水怪}} {{color:grey|mov_z2(float x,float y,float height) 417 和mov_z成对}} {{color:grey|ins_418(float x,float y)仅在前作FSL(298)6面神妈的圈圈移动上使用}} {{color:grey|ins_419(float x,float y)和ins_418成对}} mov_ellipse(float θ,float speed,float radius,float,rspeed,float dir,float rate) 420 使单位进行椭圆运动,曲线的极坐标(原点为单位之前的位置)(radius,θ) θ的增速为speed,radius增速为 rspeed,dir为 椭圆偏离的方向,rate为长半轴与短半轴的比例 mov_ellipse_chg(int time,int mode, float speed, float radius, float rspeed,float dir,float rate) 421 time帧之内改变单位圆周运动的参数,方式为mode.各参数参考mov_ellipse mov_ellipse2(float θ,float speed,float radius,float,rspeed,float dir,float rate) 422 和mov_ellipse成对 mov_ellipse_chg2(int time,int mode, float speed, float radius, float rspeed,float dir,float rate) 423 和mov_ellipse_chg成对 rvs(int a) 424 当a =1的时候赋予单位某flag(参考flag表),a=0的是消除 此flag会影响spd和spd_chg等ins,效果为左右翻转 mov_curve(int time,float x1,float y1,float x2,float y2,float x3,float y3) 425 在time时间内将单位最终移动至点x2,y2. 期间首先向点x1,y1移动和一点时间再向 终点偏差x3,y3移动一段时间再移动至终点x2,y2. mov_curve2(int time,float x1,float y1,float x2,float y2,float x3,float y3) 426 和mov_curve成对 mov_init() 427 初始化和清零移动相关参数 spd_correct(int) 428 spd的无视左右翻转版 spd_chg_correct(int) 429 spd_chg的无视左右翻转版 spd_correct2(int) 430 spd2的无视左右翻转版 spd_chg_correct2(int) 431 spd_chg2无视左右翻转版 {{color:grey|ins_432(int)未知}} {{color:grey|ins_433(int)未知}} ins_434(int a,int b,int c ,float x,float y) 未知移动函数 ins_435(int a,int b,int c ,float x,float y) 和ins_434成对 mov_chg_correct(int time,int mode,float x,float y) 436 mov_chg的无视左右翻转版 mov_chg_correct2(int time,int mode,float x,float y) 437 mov_chg2的无视左右翻转版 ins_434_correct(int a,int b,int c ,float x,float y) 438 ins_434的无视左右翻转版 ins_435_correct(int a,int b,int c ,float x,float y) 439 ins_435的无视左右翻转版 {{color:grey|ins_441(int time,int mode,float dir) time帧后移动方向角增加dir,方式为mode}} {{color:grey|ins_445(int time,int mode,float s) time帧内速度增加至s,方式为mode}} ins_446 绀珠传中出现 ins_447 绀珠传中出现 ===单位固有属性=== hitbox(float width,float height) 500 目标被弹判定 killbox(float width,float height) 501 目标体术判定 option(int flag) 502 设置单位的一些特定参数,a为2个4字节的开关参数0000000000000000 详细参考下方FLAG表 option_unset(int a) 503 取消option设置的参数,和option刚好相反 clip(float x,float y,float m,float n) 504 限制boss的移动范围,以x,y为基准+- n 和m的范围 clip_unset() 505 移除移动范围限制 drop_clear() 506 清除掉落 drop_set(int type,int amount) 507 目标掉落道具及数量 1.p点 2蓝点 3.大p 4.残碎片 5残机,6B碎片 7Bomb 8大F 9小最大得点,获得时无音效,每个增加2最大得点, 10.中最大得点,获取时有音效,每个增加2最大得点.11.中最大得点,获取时有音效,每个增加20最大得点. 12.B碎片(参与hzc收点系统的循环) drop_area(float width,float height) 508 设置掉落区域 drop() 509 掉落所有道具 drop_basic(int type) 510 设置目标基本掉落,数量是1. set_life(int life) 511 更改单位血量 bossmode(int a) 512 a=0,设为boss战模式(血条,名字等),a=-1,结束boss。 time_reset() 513 重置时间 interrupt(int a,血量,时间,“阶段变量名”) 514 当血量和或时间达到此数值时 载入下一阶段(符卡或非符) ''a的作用未知'' invincible(int time) 515 无敌时间 playSE(int) 516 播放音效 vibration(int a,int b,int c) 517 震屏特效。a为持续时间(帧),bc均与震屏强度有关,都是越大震动越强,区别不明。 talk(int) 518 读取对话,参数对应msg文件,同时执行525 after_talk() 519 对话后进行下一条 after_kill() 520 击破后进行下一条 timeout(int a,"func") 521 时间到0时进行func的内容,a作用未知 cardX(int a, int life, int score, "X符:XXXX") 522 进入符卡模式,设置符卡宣言后右上角 符卡时间,scb,符卡名,a和符卡序号有关 Ex面使用 {{color:grey|card0(int a, int life, int score, "X符:XXXX") 528 进入符卡模式,设置符卡宣言后右上角 符卡时间,scb,符卡名,a和符卡序号有关 未使用}} cardE(int a, int life, int score, "X符:XXXX") 537 进入符卡模式,设置符卡宣言后右上角 符卡时间,scb,符卡名,a和符卡序号有关 非ex面关底使用 card1(int a, int life, int score, "X符:XXXX") 538 进入符卡模式,设置符卡宣言后右上角 符卡时间,scb,符卡名,a和符卡序号有关 HZC中未使用. cardM(int a, int life, int score, "X符:XXXX") 539 进入符卡模式,设置符卡宣言后右上角 符卡时间,scb,符卡名,a和符卡序号有关 非ex面道中使用 endSC() 523 结束符卡模式 chapter(float) 524 设置章节数,影响即将出现的符卡立绘,背景以及左上角boss的名字 在设置gzz里的结算点, clear_unit() 525 清除所有单位,有某些flag的不会被清除. protect_area(float) 526 设置弹幕生成保护范围(距离)自机在此范围内时不发弹 lifebar(int a, float life, int c) 527 设置血条上的标记点,a是标记序号,life对应血量, c是RGB值 RANK一直存在于游戏程序中,收点+rank miss减rank 理论来讲应该是a:b,a:b:c,a:b:c:d:e代表rank然后a:b:c:d代表难度的,然而作者懒得做这个功能了因为没人用rank了 rank3F(N,float a,b,c) 529 根据RANK决定变量N rank5F(N,float a,b,c,d,e) 530 根据RANK决定变量N rank2F(N,float a,b) 531 根据RANK决定变量N rank3I(M,int a,b,c) 532 根据RANK决定变量M rank5I(M,int a,b,c,d,e) 533根据RANK决定变量M rank2I(M,int a,b) 534 根据RANK决定变量M ins_535(M,int a,b,c,d)根据难度将数据写入整数M中 {{color:red|已废}}请使用冒号 ins_536(N,float a,b,c,d)根据难度将数据写入浮点数N中 {{color:red|已废}}请使用冒号 star(int) 540设置剩余阶段数(左上角的星星数) {{color:gray|ins_541(int)仅在风神录(对应ins_361)使用过,为4,5,6面某些效果设置,效果不明.之后被zun遗弃}} time_card() 542 设置符卡为时符 {{color:blue|ins_543()某些时符使用}} ins_544(int) 当a=1时赋予单位某flag(参考下方flag表),a=0时取消 雷鼓的使魔们使用 reset() 545 重置boss一些参数,除了boss1非以外,每一张非和卡都出现和,boss逃跑和死亡也会出现 ins_546(int,int) 当a =1的时候赋予单位某flag,a=0的是消除 此flag会使boss对Bomb免疫,并且由b来决定放b时的播放的动画 同时会消除某单位flag 具体参照下方flag表 droprate(float) 547 设置时间倍率,1.0是正常,击破后减速可以设成0.5,咲夜时停是设成0.0 ins_548(int a, b, c, d);wait(等待)的难度选择版 {{color:red|已废}}请使用wait+冒号 {{color:gray|ins_549(int) 当a =1的时候赋予单位某flag,a=0的是消除,参照下方flag表 仅在地灵殿(对应ins_369)四面使用过,效果不明.之后被zun遗弃}} {{color:gray|ins_550(int)仅在地灵殿(对应ins_370)四面使用过,效果不明.之后被zun遗弃}} {{color:gray|ins_551(int)仅在地灵殿(对应ins_371)四面使用过,效果不明.之后被zun遗弃}} {{color:gray|ins_552(int)仅在星莲船(对应ins_452)一面使用过,效果不明.之后被zun遗弃}} hit_SE(int) 553 设置被打击的音效 logoenemy() 554 显示logoenemy dead_attack("DeadAttack1") 556 设置死尸弹 {{color:red|ins_557(int, int,int, float, float) 一些道中boss死亡时使用,效果未知}} ins_558(int) a=1则赋予单位某flag,a=0消除,具体参照下方flag表 和424功能完全一样,此flag控制左右移动翻转 {{color:red|ins_559(int)未知}} {{color:red|ins_560(float a,flaot b)未知}} ins_561() 放出单位死亡特效(实际不死亡)庙道中击破大蝴蝶之后鬼火爆炸时发现 {{color:red|ins_562()未知}} {{color:red|ins_563(???)}} {{color:red|ins_564(???)}} bomb_damage_rate(float a) 565 设置b伤害的倍率,0.0的话就是炸不掉血,1.0就是全额伤害 {{color:blue|ins_566(???)没有在任何位置发现,可能zun设计之后未使用}} {{color:red|ins_567(int)正邪使用,效果未知}} damage_rate(int) 568 设置boss的伤害倍率,0为谱模式,1为符卡模式(用于双boss同时在场时,设置副boss的倍率) {{color:green|kill_rate(int) 569 绀珠传新增,用来设置击破率}} ins_570 绀珠传中出现 ins_571 绀珠传中出现 ===弹幕相关=== et_ini(int a) 600 创建一个弹幕,编号为a {{color:red|请直接使用set_et}} et_shoot(int a) 601 发射a号子弹 et_shape(弹幕编号,int a,int b) 602 设置弹幕贴图,a b 对应 bullet.Anm文件中description文件的内容。 {| class="wikitable" |- ! 子弹名 !! 子弹编号 !! 弹型 !! 子弹名 !! 子弹编号 !! 弹型 !! 子弹名 !! 子弹编号 !! 弹型 |- | ET_dot || 0 || 点弹 || ET_dot2 || 1 || 点弹 || ET_mold || 2 || 葡萄弹/霉菌弹 |- | ET_tiny || 3 || 粒弹 || ET_small || 4 || 小玉 || ET_small2 || 5 || 小玉 |- | ET_ring || 6 || 环玉 || ET_ring2 || 7 || 环玉 || ET_grain || 8 || 米弹 |- | ET_kunai || 9 || 链弹/苦无 || ET_needle || 10 || 针弹 || ET_square || 11 || 札弹 |- | ET_triangle || 12 || 鳞弹 || ET_bullet || 13 || 铳弹 || ET_sb || 14 || 消弹效果 |- | ET_long_mold || 15 || 杆菌弹 || ET_small_star || 16 || 顺时针旋转小星弹 || ET_money || 17 || 钱币 |- | ET_middle || 18 || 中玉 || ET_high_middle || 19 || 高光中玉 || ET_ellipse || 20 || 椭弹 |- | ET_knife || 21 || 刀弹 || ET_butterfly || 22 || 蝶弹 || ET_big_star || 23 || 顺时针旋转大星弹 |- | ET_red_fire || 24 || 红色炎弹 || ET_purple_fire || 25 || 紫色炎弹 || ET_blue_fire || 26 || 蓝紫炎弹 |- | ET_yellow_fire || 27 || 黄色炎弹 || ET_heart || 28 || 心弹 || ET_eye || 29 || 伸缩中玉 |- | ET_arrow || 30 || 矢弹 || ET_big || 31 || 大玉 || ET_light || 32 || 光玉 |- | ET_drop || 33 || 滴弹 || ET_spin_grain || 34 || 旋转米弹 || ET_spin_needle || 35 || 旋转针弹 |- | ET_reverse_small_star || 36 || 逆时针旋转小星弹 || ET_laser || 37 || 激光段 || ET_red_music || 38 || 红色音符弹 |- | ET_blue_music || 39 || 蓝色音符弹 || ET_yellow_music || 40 || 黄色音符弹 || ET_purple_music || 41 || 紫色音符弹 |- | ET_silence || 42 || 休止符弹 || ??? || 43 || 空白(仍有极小判定) |} {{color:green|绀珠传里24是逆时针旋转大星弹,25之后顺延,相对顺序不变}} 由于对于不同大小的弹幕,颜色编号不一样,请对照bullet.anm里的图片使用。 大小16x16或以下的: {| class="wikitable" |- ! 颜色名 !! 颜色编号 !! 颜色名 !! 颜色编号 !! 颜色名 !! 颜色编号 !! 颜色名 !! 颜色编号 |- | BLACK16 || 0 || DARK_RED16 || 1 || RED16 || 2 || DARK_PURPLE16 || 3 |- | PURPLE16 || 4 || DARK_BLUE16 || 5 || BLUE16 || 6 || DARK_CYAN16 || 7 |- | CYAN16 || 8 || DARK_GREEN16 || 9 || BLUE_GREEN16 || 10 || GREEN16 || 11 |- | GREEN_YELLOW16 || 12 || YELLOW16 || 13 || ORANGE16 || 14 || WHITE16 || 15 |} 大小32x32的: {| class="wikitable" |- ! 颜色名 !! 颜色编号 !! 颜色名 !! 颜色编号 !! 颜色名 !! 颜色编号 !! 颜色名 !! 颜色编号 |- | BLACK32 || 0 || RED32 || 1 || PURPLE32 || 2 || BLUE32 || 3 |- | CYAN32 || 4 || GREEN32 || 5 || YELLOW32 || 6 || WHITE32 || 7 |} 大小64x64的(大玉): {| class="wikitable" |- ! 颜色名 !! 颜色编号 !! 颜色名 !! 颜色编号 !! 颜色名 !! 颜色编号 !! 颜色名 !! 颜色编号 |- | RED64 || 0 || BLUE64 || 1 || GREEN64 || 2 || YELLOW64 || 3 |} 钱币弹: {| class="wikitable" |- ! 颜色名 !! 颜色编号 !! 颜色名 !! 颜色编号 !! 颜色名 !! 颜色编号 |- | GOLD || 0 || SILVER || 1 || BRONZE || 2 |} et_offset(弹幕编号,float x,float y) 603 以基准发弹点用直角坐标的方式偏移发弹点。基准发弹点默认是单位目前坐标 et_dir(弹幕编号, float dir, float r) 604 设置弹幕方向为 dir,每way之间的角度差为r et_speed(弹幕编号, float speed, float s) 605 设置弹幕速度为 speed,其中最慢一层的速度为s et_num(弹幕编号,int way,int ceng) 606 设置弹幕的way数和层数, et_style(弹幕编号,int style) 607 根据style设置弹幕展开的形状,若此弹幕是1way 1层的,则无影响 {| class="wikitable" |- ! 常量名 !! 序号 !! 功能 |- | ET_AIM_NORM || 0 || 自机狙普通 |- | ET_NORM || 1 || 普通 |- | ET_AIM_CIR || 2 || 自机狙右偏开花 |- | ET_CIR || 3 || 右偏开花 |- | ET_AIM_CIR2 || 4 || 自机狙左偏开花 |- | ET_CIR2 || 5 || 左偏开花:开花即为速度最慢一层方向普通,每向外一层,方向偏转每way角度差(右偏为逆时针左偏为顺时针),此时所有way数自动排成一个圆,不再受每way角度差限制 |- | ET_RAN2 ||6 || 一坨:方向普通。每层在 弹幕方向+-每way角度差 的角度内随机分布,层之间不随机。 |- | ET_RAN_CIR || 7 || 散开一坨:每颗弹幕均在 speed~speed+2*s 360度 范围内随机分布。 |- | ET_RAN || 8 || 一坨:每颗弹幕均在 speed~speed+2*s dir+-r 范围内随机分布。 |- | ET_AIM_STAR || 9 || 自机狙金字塔开花 |- | ET_STAR || 10 || 金字塔开花:金字塔开花即为首先层数总数除以2,速度最快1~2颗弹幕方向普通,之后速度每慢1层,有两颗弹幕,方向向两侧偏转每way角度差 |- | ET_PEANUT || 11 || 上下?:方向普通。所有子弹排成一个花生状(360度分布),花生顶尖的一way弹幕速度为设定值(花生的每way弹速是固定的,具体弹速-角度关系待测) |- | ET_PEANUT2 || 12 || 开花:与11类似。11与12的每way角度刚好成间隔排布。弹速-角度关系与11相同。 |} 9与10金字塔开花型子弹若想脑补,请参考en难度风神录一面道中二非 et_SE(弹幕编号, int a,int b) 608 设置弹幕音效,a是发弹音效,b是变向音效。不设置的话就是默认。-1代表没有音效 609-612为设置弹幕各种变速等复杂的属性,具体请翻至最下面[[#609-612.E6.8C.87.E4.BB.A4.E8.AF.A6.E8.A7.A3|这里]]查阅。教程点击[[/MUAECL基本规范|这里]]。 et_clear_all() 613 全屏消弹,不增加得点 et_copy(int a,int b) 614 复制弹幕b到a中,弹幕属性仅复制这个函数使用之前设定的, et_clear(float r) 615 消掉半径为r范围内的弹幕,消掉的弹幕变为最大得点 et_clear0(float r) 616 消掉半径为r范围内的弹幕,不增加得点 et_speed_rank3(弹幕编号,float a,b,c,d,e,f) 617 根据rank的值来决定弹速 et_speed_rank5(弹幕编号,float a,b,c,d,e,f,g,h,i,j) 618 根据rank的值来决定弹速 et_speed_rank2(弹幕编号,float a,b,c,d) 619 根据rank的值来决定弹速 et_amount_rank3(弹幕编号,int a,b,c,d,e,f) 620 根据rank的值来决定way数和层数 et_amount_rank5(弹幕编号,int a,b,c,d,e,f,g,h,i,j) 621 根据rank的值来决定way数和层数 et_amount_rank2(弹幕编号,int a,b,c,d) 622 根据rank的值来决定way数和层数 ins_624(弹幕编号,float a,b,c,d,e,f,g,h) et_speed的难度结合版,即如果难度为Easy 则相当于et_speed(弹幕编,a,e) {{color:red|已废}}请使用et_speed+冒号 ins_625(弹幕编号,int a,b,c,d,e,f,g,h) et_num的难度结合版,即如果难度为Easy 则相当于et_num(弹幕编,a,e) {{color:red|已废}}请使用et_num+冒号 et_offset_polar(弹幕编号,float o,float r) 626 以基准发弹点用极坐标的方式偏移发弹点,角度为o,半径为r。 et_nearby(弹幕编号,float dis) 627 设置发弹点。以boss为半径为dis的圆形边上发弹。 et_base(弹幕编号,float x,float y) 628 设置发弹基准点 texture(flout r,int color) 629 设置boss周围的纹理变化特性,影响半径为r,颜色为 color,对应RGB颜色, {{color:red|ins_630(int)6和7boss使用,用途未知}} {{color:red|ins_631(???)}} ins_632(int) boss每身重置为0,有些特殊攻击模式时启用,于变换mode32768配合使用 具体请阅读下方表格mode32768部分 {{color:red|ins_633(int)神灵庙布嘟嘟的船使用,用途未知}} {{color:red|ins_634(???)}} {{color:red|ins_635(???)}} {{color:red|ins_636(???)}} ins_637(int) 使用各boss独有的特殊变化。如雷鼓震屏,正邪翻转 只有特定boss才能使用特定变化. {{color:red|ins_638(???)}} {{color:red|ins_639(???)}} et_obj(弹幕编号,int a,"func") 640 由弹幕召唤使魔的时候使用,需要a= mode 16777216的弹幕编号2 {{color:red|ins_641(弹幕编号)hzc6面时符大型刀弹使用,用途未知}} ===激光相关=== et_ls_length(弹幕编号,float a,float length,float b,float width) 700 使弹幕变成激光,设置长度和宽度,a和b是开始位置的参数,一般激光设成0就行 17条爆弹那种预警线+直接生产的设置成和长度一样 若要发射曲线激光,则a,length,b 都是无关参数,设成-1.0f,曲线激光只可以设置宽度. et_ls_time(弹幕编号,int a,int b,int c,int d, int e) 701 设置预警线持续时间a和激光的持续时间c. b和d分别是从预警线变为实际激光和激光消失过程需要的时间,e一般为0 用途未知 若发射曲线激光则,则b,c,d,都是无关参数,a是激光发射持续时间(决定其长度) e仍然是迷之0 et_ls_shoot(弹幕编号) 702 普通激光的发弹函数 et_ls(弹幕编号,int a) 703 发射预警线激光专用,a为激光编号,区别于弹幕编号 ls_pos(激光编号,float x,float y) 704 改变激光的起点为x,y ls_move(激光编号,float x,float y) 705 赋予激光起点一个速度 {{color:red|ins_706(???)}} ls_width(激光编号,float width) 707 改变激光的宽度为width ls_dir(激光编号,float a) 708 改变激光的角度为a ls_rotate(激光编号,float a) 709 赋予激光一个顺时针的角速度a ls_clr(激光编号) 消除激光 710 et_bentls_shoot(弹幕编号) 711 曲线激光用发弹函数 {{color:green|obj_ls(float length,float width) 712 改变单位判定,使其变成类似于激光的东西,天邪鬼新增}} ins_713 绀珠传中出现 ins_714 绀珠传中出现 ===其他=== simu(int,"subroutin"); 800 推测是同时开启另一个人的"subroutin",第一个int参数与编号有关,不明。eg.比如绀珠传ex的纯狐与赫卡互动。 if_alive(int A,int b) 555 检查第b号单位是否存活,若存活测A=1,否则A=0.单位的编号就是单位登场的顺序.main为0号 test_pos(float %X,float %Y,int n); 801 返回(X,Y)等于第n号小怪的坐标。eg.比如神灵庙6道中判断大蝴蝶如果出屏则幽灵就不因大蝴蝶出屏消失而死亡 simu_term(int); 802 参数为0,立即击破场上boss当前阶段(用于多boss同台时,击破一个boss时另一个boss也同时击破,例hzcex道中2,3符) ins_900() 仅仅在一面道中的GirlTest中出现一次,zun测试用 ins_901() 仅在DebugSkipFunc 使用,zun用来跳过Debug ins_902() 仅在五面道中使用,作用未知,即使删除对游戏毫无影响,推测zun为debug用。 {{color:red|ins_1001(int);迷}} {{color:red|ins_1002(int);迷}} {{color:red|ins_1003(int);迷}} {{color:red|ins_1004();迷}} ===集成语句=== CardStart() 开卡时用。 time_reset(); ins_21(); clear_unit(); obj("Ecl_EtBreak", 0., 0., 9999, 0, 0);//这个是消弹圈,在default.ecl里 endSC(); ins_632(0); reset(); playSE(27); spd(0., 0.); spd_chg(0, 0, 0., 0.); mov_chg(0, 0, 0., 0.); MNum = 0; BNum = 0; ifSCB = 1; CardEnd() 开非符时用。 time_reset(); ins_21(); clear_unit(); if(ifNotEscape==0){ et_clear(640.0f); } else{ et_clear0(640.0f); } endSC(); ins_632(0); reset(); playSE(27); spd(0., 0.); spd_chg(0, 0, 0., 0.); mov_chg(0, 0, 0., 0.); MNum = 0; BNum = 0; ifSCB = 1; set_et(int 弹幕编号, int style, int 弹幕类型, int 弹幕颜色, int way, int ceng, float 方向, float 角度差, float speed, float 速度差) 初始化弹幕。其中弹幕样式,弹幕类型和弹幕颜色可以使用常量。 et_ini(弹幕编号); et_style(弹幕编号, style); et_shape(弹幕编号, 弹幕类型, 弹幕颜色); et_num(弹幕编号, way, ceng); et_dir(弹幕编号, 方向, 角度差); et_speed(弹幕编号, speed, 速度差); ===特殊变量表=== {{color:#228B22|SCNum int 9907 未知全局变量 SLM(4BE7D4) HZC中代表符卡练习模式中的符卡序号 }} {{color:#228B22|OBJNumNoFlag int 9908 同屏单位数单数不包含还有单位flag.1,16,32的单位 }} {{color:#00ffff|Var_9909 int 9909 单位未知参数 SLM(11E8) DZZ 11c4}} {{color:#8B4513|Var_9910 int 9910 boss未知参数,同9969 SLM(128c) }} {{color:#8B4513|DIRBoss float 9911 boss最终位移的方向,停下后变成0 }} {{color:#8B4513|Var_9912 int 9912 文花帖DS中有特别意义,SLM之后固定放弃使用为0}} {{color:#8B4513|hasShotNum int 9913 文花帖DS中为已拍照张数,SLM之后固定放弃使用为0}} {{color:#8B4513|NUM int 9914 当前单位的单位编号 }} {{color:#8B4513|GF7 float 9915 可供随意使用的全局变量 }} {{color:#8B4513|GF6 float 9916 可供随意使用的全局变量 }} {{color:#8B4513|GF5 float 9917 可供随意使用的全局变量 }} {{color:#8B4513|GF4 float 9918 可供随意使用的全局变量 }} {{color:#8B4513|GF3 float 9919 可供随意使用的全局变量 }} {{color:#8B4513|GF2 float 9920 可供随意使用的全局变量 }} {{color:#8B4513|GF1 float 9921 可供随意使用的全局变量 }} {{color:#8B4513|GF0 float 9922 可供随意使用的全局变量 }} {{color:#8B4513|GI3 int 9923 可供随意使用的全局变量 }} {{color:#8B4513|GI2 int 9924 可供随意使用的全局变量 }} {{color:#8B4513|GI1 int 9925 可供随意使用的全局变量 }} {{color:#8B4513|GI0 int 9926 可供随意使用的全局变量 }} {{color:#8B4513|Var_9927 int 9927 SLM:[4C2194] +74==0且 4DCC30 !=0时 为1,否则0}} {{color:#8B4513|Var_9928 int 9928 文花帖DS中有特别意义,SLM之后固定放弃使用为0}} {{color:#8B4513|Var_9929 int 9929 文花帖DS中有特别意义,SLM之后固定放弃使用为0}} {{color:purple|shotPower int 9930 自机当前火力}} {{color:purple|objHasAppearedNum int 9931 已经出现单位数量-1,包含main}} {{color:#000080|F7 float 9932 可供随意使用的每个单位自身的局部变量 }} {{color:#000080|F6 float 9933 可供随意使用的每个单位自身的局部变量 }} {{color:#000080|F5 float 9934 可供随意使用的每个单位自身的局部变量 }} {{color:#000080|F4 float 9935 可供随意使用的每个单位自身的局部变量 }} {{color:#000080|BF3 float 9936 BOSS的局部变量 }} {{color:#000080|BF2 float 9937 BOSS的局部变量 }} {{color:#000080|BF1 float 9938 BOSS的局部变量 }} {{color:#000080|BF0 float 9939 BOSS的局部变量 }} {{color:#000080|BI3 int 9940 BOSS的局部变量 }} {{color:#000080|BI2 int 9941 BOSS的局部变量 }} {{color:#000080|BI1 int 9942 BOSS的局部变量 }} {{color:#000080|BI0 int 9943 BOSS的局部变量 }} {{color:#000080|DISPlayer float 9944 单位至自机的距离}} {{color:#000080|PlayerID int 9945 机体序号,0=灵梦a}} {{color:#000080|OBJNum int 9946 同屏单位数,由于隐藏着main和mapleenemy,所以始终比可见的单位数量多出来2个}} {{color:#000080|ifSCB int 9947 判断上1符卡是否收取,收则是1}} {{color:#000080|BNum int 9948 已丢的b的数量}} {{color:#000080|MNum int 9949 已miss数}} ifL int 9950 当难度为L时,为1。否则为0 ifH int 9951 当难度为H时,为1。否则为0 ifN int 9952 当难度为N时,为1。否则为0 ifE int 9953 当难度为E时,为1。否则为0 LIFE int 9954 单位当前血量 单位坐标和速度拥有最终,目前,和相对 三种参考 移动相关ins AIM_relat float 9955 单位相对坐标至自机位置的方向 AIM_absol float 9956 单位绝对至自机位置的方向 Var_9957 int 9957 = 1 DIR int 9958 单位最终位移的方向,停下后变成0 DIFF int 9959 难度,0123分别为ENHL RANK int 9960 Rank Var_9961 int 9961 未知 (地址1120) YBoss float 9962 当前bossy坐标, XBoss float 9963 当前bossx坐标, YPlayer2 float 9964 自机y坐标,与YPlayer完全相同 XPlayer2 float 9965 自机x坐标,与XPlayer完全相同 R_relat float 9966 单位相对曲线运动时的运动半径 R_absol float 9967 单位绝对曲线运动时的运动半径 V_relat float 9968 单位相对速度大小 V_absol float 9969 单位绝对速度大小 VDIR_relat float 9970 单位相对移动速度的方向 VDIR_absol float 9971 单位绝对移动速度的方向, Y2_relat float 9972 单位相对坐标y 与Y_relat完全相同 X2_relat float 9973 单位相对坐标x 与X_relat完全相同 Y2_absol float 9974 单位绝对坐标的y值,与Y_absol完全相同 X2_absol float 9975 单位绝对坐标的x值,与X_absol完全相同 Y2 float 9976 单位最终坐标的y值,与Y完全相同 X2 float 9977 单位最终坐标的x值,与X完全相同 以下8个变量在创建子单位的时候,子单位将继承 并且某些特殊函数会收这写变量影响 F3 float 9978 每个单位自身的局部变量 F2 float 9979 每个单位自身的局部变量 F1 float 9980 每个单位自身的局部变量 F0 float 9981 每个单位自身的局部变量 I3 int 9982 每个单位自身的局部变量 I2 int 9983 每个单位自身的局部变量 I1 int 9984 每个单位自身的局部变量 I0 int 9985 每个单位自身的局部变量 ifNotEscape int 9986 判定是否全避时使用,若不为0则是全避,实际可能有其他含义,经测试并非boss血量 RanF2 float 9987.0f -1.0至1.0之间的随机浮点数 TIME int 9988 已经过的时间 AIM float 9989 单位最终坐标至自机位置的方向 YPlayer float 9990 自机y坐标 XPlayer float 9991 自机x坐标 Y_relat float 9992 单位相对坐标y X_relat float 9993 单位相对坐标x Y_absol float 9994 单位绝对坐标的y值 X_absol float 9995 单位绝对坐标的x值 Y float 9996 单位最终坐标的y值, X float 9997 单位最终坐标的x值, RanDEG float 9998 -π至π之间的随机浮点数 RanF float 9999 0至 1.0之间的随机浮点数 RanI int 10000 随机整数,范围非常大 ===609-612指令详解=== mode表 注意此表是以hzc为准,如gzz中 mode8192的用法明显有改变 spddown() 1 弹幕生成时向前蹿一小段距离 eff(int a) 2 根据a设置弹雾 spdup(int a, float r, float s) 4 设置加速度为r,加速时间a,s为加速度的角度 rot(int a, int b, float r, float s) 8 设置切向加速度为r,s自转角速度,持续时间为a,b一般情况下不使用,当变换对象是曲线激光时,各个变换将会同时进行,此时b来设置b帧后执行. jump(int a, int b, int c, int d, float r, float s) 16 a帧后停顿,之后方向+r,速度变为s,变化次数为b,变换的了类型为c,d用途未知的,具体变换类型在表格下方. 32(anything) 未使用,保留 reflect(int a, int b, float r)触壁反弹,a为反弹次数,b是一个6位的2进制数来设置可反弹墙壁,从右到左依次为上下左右,为1则为反弹+变速,为0则只变速,即如果b=001111则4面全可以反弹,b=000000则碰到四面就改变速度(变速后再碰到反弹墙则不变速),r为接触墙壁后的速度 reflect-wall(int a, int b, float r, float s, float m) 64 当b前第六位为1时,改变反弹墙位置,s,m分别代表左右,上下方的反弹壁与屏幕中心的距离。 not_clear(int a) 128 设置弹幕不可消弹时间为a帧,这段时间内无法消取本弹幕 not_out(int a, int b) 256 设置子弹可以在屏幕外持续的时间为a帧,.{{color:red|b作用未知}} change(int a, int b) 512 改变弹幕形状为a,b clear(int a) 1024 消除子弹,a为消弹效果,有0和1两种形式, se(int a) 2048 播放音效a through(int a, int b, float r) 4096 穿墙,参数用法和弹墙reflect相同. shoot(int a, int b, int c, int d, float r, float s, float m, float n) 8192 在当前弹幕的位置新子弹,a是展开形式,即et_style的参数,跳跃至变换序号b,c为way数,d为层数,r为方向角度(若=-999.则保持原方向),s为角度差,m为速度(若=-999.则保持原速度)n为速度差 shoot_par(int a, int b, int c, int d, float r, float s, float m, float n) 16384 设置shoot产生的子弹的属性,ab是设置弹幕形状和颜色,c来设置是否消去原先的子弹,1为消,0则保留,d为消弹效果,其他参数暂时不明 32768(int a) 根据指令632的参数赋予弹幕不同效果.具体参见下方。 goto(int a) 65536 跳到变换a执行(用来循环) 131072(anything) 未使用,保留 262144(anything) 未使用,保留 spdadd2(int a, float r, float s) 524288 给子弹叠加一个与et_speed原弹速独立的速度,服从平行四边形定则。r角度,s速度,a作用未知,但是需要是正整数。 light(int a) 1048576 根据a改变弹幕为高亮弹幕,a=1则是亮弹幕,a=0则普通 spdadd(int a, float r, float s) 2097152 在a帧时间内,给予弹幕一个独立于原速度的速度,朝向为s,速度为(r-原速度),服从平行四边形原则(此函数只调用一次,因此使用-9989.0f来瞄准自机则会到时只有调用这个函数瞬间的自机位置有效,此后子弹将一直瞄准这个位置.若想实时瞄准自机,需让s=999.0f,-999999.0f则不改变角度,同时要让弹幕原本的速度为0.0f,不然因为速度叠加的关系,弹幕的角度和自机狙会有所差异) size(int a, int b, float r, float s) 4194304 改变弹幕大小,a为变化时间,b为变化模式(b=0则是匀速变化)r为初始倍率,s为最终倍率. 8388608(???) {{color:red|GZZ二面终符发现,效果未知}} obj() 16777216 由子弹生成使魔的时候使用,和et_obj配合,因需要使用参数变换编号,必须明确写出编号 layer(int a) 33554432 设置此子弹的图层为a。(图层大的在上面) delay_shoot(int a) 67108864 子弹延时a帧后生成 shootls(int a, int b, int c, int d, float r, float s, float m, float n) 134217728 未使用,保留(在GZZ中,此mode和8192类似) 268435456(anything) 未使用,保留 536870912(anything) 未使用,保留 1073741824(anything) 未使用,保留 delay(int a) -2147483648 a帧后执行下一个变换 当mode是jump时根据c改变的形式不同 0方向为原方向+r,速度变为s 1.一直奇怪的自机相关的改变方式 2.自机相关+r的改变方式 3.方向变为-r,速度变为s 4.方向变为r,速度变为s 5.所有子弹随机在原方向±r范围内随机 6.所有子弹随机变向为±r范围内泛狙(未测试 7.方向不变,速度变为s。 当mode使用32768时,根据弹幕发出者的ins_632(int flag)的参数不同而不同. 若flag=0,则无任何效果 1.使单位本身可以对弹幕靠近产生反应.(hzc4a线2卡) 通过[-9978.0f]来决定受影响的范围 [-9985]会根据弹幕接近与否改变数值,弹幕接近时会变成1. 5.使弹幕对自机的接近或者离开产生反应(hzc6面5卡) 接近则跳转到变换编号5,离开则跳转到14.接触范围[-9980.0f]和[9981.0f]设置,此时一般a=1,a的具体功能尚不明 ===Flag表=== 神灵庙 {| class="wikitable" |- ! 序号 !! 值 !! 功能 |- | 0 || 1 || 无被弹判定 |- | 1 || 2 || 无体术判定 |- | 2 || 4 || 当单位离开左右版面时不会立即消失 |- | 3 || 8 || 当单位离开上下版面时不会立即消失 |- | 4 || 16 || 隐藏boss血条并设为无敌 |- | 5 || 32 || 隐藏单位,并使单位不会被525及518消除 |- | 6 || 64 || {{color:red|boss最开始都有,迷}} |- | 7 || 128 ||使单位不会被525()及518消除, |- | 8 || 256 || 保证此单位会被525以及518消除,无论拥有任何Flag |- | 9 || 512 || 设置是否可以擦弹,擦弹类似激光 |- | 10 || 1024 ||使单位不会被525及518消除,遇到对话时会死亡.曾用于XLC飞碟以及dld怨灵 |- | 11 || 2048 || 设置是否会被消弹效果秒杀 |- | 12 || 4096 || |- | 13 || 8192 || |- | || ||下列FLAG是由系统内部或者其他函数赋予和消除的 |- | 18 || 0x00040000 ||限制单位移动范围,由504赋予,505消除 |- | 19 || 0x00080000 ||{{color:grey|引擎内部使用,标记单位使用被某个函数测验过}} |- | 20 || 0x00100000 ||使单位移动方向左右翻转,由424赋予和消除 |- | 21 || 0x00200000 ||单位左右移动是贴图会不会变化,由306赋予,318消除}} |- | 22 || 0x00400000 ||{{color:grey|引擎内部使用,非boss单位或隐藏单位此flag会被自动剔除}} |- | 23 || 0x00800000 ||特殊单位,不会被525及518消除 |- | 24 || 0x01000000 ||Boss模式单位,此flag要通过512赋予和消除 |- | 25 || 0x02000000 ||判定是否全避(存在时就是全避) |- | 26 || 0x04000000 ||要被消除的单位,由525以及518赋予 |- | 27 || 0x08000000 ||{{color:red|功能未知,影响300等函数}} |- | 28 || 0x10000000 ||{{color:red|功能未知,由544赋予和消除}} |- | 29 || 0x20000000 ||对BOMB免疫,由546赋予和消除 |- | 30 || 0x40000000 ||{{color:red|功能未知,由546消除}} |- | 31 || 0x80000000 ||{{color:grey|引擎内部使用}} |- | || ||DZZ开始扩充了Flag,额外新增了4字节 |- | 32 || 0x00000001 ||{{color:red|功能未知,由549赋予和消除}} |} 辉针城 {| class="wikitable" |- ! DEC !! HEX !! 功能 |- | 1 || 0x0001 || 无被弹判定 |- | 2 || 0x0002 || 无体术判定 |- | 4 || 0x0004 || 当单位离开左右版面时不会立即消失 |- | 8 || 0x0008 || 当单位离开上下版面时不会立即消失 |- | 16 || 0x0010 || 隐藏boss血条并设为无敌 |- | 32 || 0x0020 || 隐藏单位,并使单位不会被525及518消除 |- | 64 || 0x0040 || {{color:red|boss最开始都有,迷}} |- | 128 || 0x0080 ||使单位不会被525()及518消除, |- | 256 || 0x0100 || 保证此单位会被525以及518消除,无论拥有任何Flag |- | 512 || 0x0200 || 设置是否可以擦弹,擦弹类似激光 |- | 1024 || 0x0400 ||使单位不会被525及518消除,遇到对话时会死亡.曾用于XLC飞碟以及dld怨灵 |- | 2048 || 0x0800 || 设置是否会被消弹效果秒杀 |- | 4096 || 0x1000 || |- | 8192 || 0x2000 || |- | || ||下列FLAG是由系统内部或者其他函数赋予和消除的 |- | 17 || 0x00020000 ||限制单位移动范围,由504赋予,505消除 |- | 18 || 0x00040000 ||{{color:grey|引擎内部使用,标记单位使用被某个函数测验过}} |- | 19 || 0x00080000 ||使单位移动方向左右翻转,由424赋予和消除 |- | 20 || 0x00100000 ||单位左右移动是贴图会不会变化,由306赋予,318消除}} |- | 21 || 0x00200000 ||{{color:grey|引擎内部使用,非boss单位或隐藏单位此flag会被自动剔除}} |- | 22 || 0x00400000 ||特殊单位,不会被525及518消除 |- | 23 || 0x00800000 ||Boss模式单位,此flag要通过512赋予和消除 |- | 24 || 0x01000000 ||判定是否全避(存在时就是全避) |- | 25 || 0x02000000 ||要被消除的单位,由525以及518赋予 |- | 26 || 0x04000000 ||{{color:red|功能未知,影响300等函数}} |- | 27 || 0x08000000 ||{{color:red|功能未知,由544赋予和消除}} |- | 28 || 0x10000000 ||对BOMB免疫,由546赋予和消除 |- | 29 || 0x20000000 ||{{color:red|功能未知,由546消除}} |- | 30 || 0x40000000 ||{{color:grey|引擎内部使用}} |- | 31 || 0x80000000 ||{{color:red|功能未知,由549赋予和消除}} |}
该页面使用的模板:
脚本对照表
(
查看源代码
)
模板:头部设定
(
查看源代码
)(受保护)
模板:词条头部
(
查看源代码
)(受保护)
模板:资料头部
(
查看源代码
)(受保护)
返回
脚本对照表/MUAECL
。
分类
:
脚本对照表
导航菜单
个人工具
创建账号
登录
命名空间
页面
讨论
查看
阅读
源码
查看历史
更多
搜索
常用
首页
东方Project
上海爱丽丝幻乐团
ZUN
幻想乡
幻想乡年表
东方年表
东方同人规约
近期新闻
沙盒(建议使用)
讨论板
加入我们
官方作品
官方游戏
旧作
东方灵异传
东方封魔录
东方梦时空
东方幻想乡
东方怪绮谈
东方红魔乡
东方妖妖梦
东方永夜抄
东方花映塚
东方风神录
东方地灵殿
东方星莲船
东方神灵庙
东方辉针城
东方绀珠传
东方天空璋
东方鬼形兽
东方虹龙洞
东方兽王园
小数点射击游戏
东方文花帖
东方文花帖DS
妖精大战争
弹幕天邪鬼
秘封噩梦日记
弹幕狂们的黑市
黄昏边境合作游戏
东方萃梦想
东方绯想天
东方非想天则
东方心绮楼
东方深秘录
东方凭依华
东方刚欲异闻
官方音乐
原曲列表
非音乐CD音乐列表
音乐CD曲目列表
蓬莱人形
莲台野夜行
梦违科学世纪
卯酉东海道
大空魔术
未知之花 魅知之旅
鸟船遗迹
伊奘诺物质
燕石博物志
旧约酒馆
虹色的北斗七星
七夕坂梦幻能
幺乐团的历史系列
幺乐团的历史 vol.1
幺乐团的历史 vol.2
幺乐团的历史 vol.3
幺乐团的历史 vol.4
幺乐团的历史 vol.5
黄昏游戏OST
幻想曲拔萃
全人类的天乐录
核热造神非想天则
暗黑能乐集心绮楼
深秘乐曲集
深秘乐曲集·补
完全凭依唱片名录
贪欲之兽的音乐
商业出版物附带CD
官方书籍
东方香霖堂
东方三月精
第一季
月之妖精
第二季
第三季
第四季
东方文花帖
风之号外
东方紫香花
六十年不见的紫香花
东方儚月抄
漫画
小说
四格
东方茨歌仙
东方铃奈庵
东方醉蝶华
东方智灵奇传
东方求闻史纪
记忆幻想乡
东方求闻口授
魔理沙的魔法书
宇佐见的魔法书
东方外来韦编
东方文果真报
东方人妖名鉴
宵暗篇
常世篇
幻想Narrato Graph
官方角色
公式资料
附带文档
游戏对话
官方作品光盘信息
角色自称用词表
官作译名更改记录
原作物品列表
出典文献列表
其他ZUN参与的作品
西方Project
黄昏酒场
东方关联人物
游戏攻略
东方相关活动
从第二家开始的广播
东方STATION
数码游戏博览会
PoriPori☆Club
niconico超会议
斗会议
niconico原创游戏祭
枯萎Radio
GDGD
其他相关项目
东方我乐多丛志
东方四方山新闻
Play,Doujin!
东方电书流通
东方音乐流通
二次创作与活动
展会及活动导航
Comic Market
博丽神社例大祭
博丽神社例大祭SP
博丽神社秋季例大祭
博丽神社例大祭in台湾
海外博丽神社例大祭
博丽神社歌谣祭
博丽神社崇敬会相关活动
COMICUP
魅知幻想博览会
上海THONLY
东方Only活动
东方红楼梦
角色Only活动
作品Only活动
地区Only活动
其他地区举办的展会
其他展会
M3
COMIC1
展会作品列表
展会作品数量
展会同人志列表
展会专辑列表
展会软件列表
展会视频列表
商业二次创作
电脑游戏
东方月神夜
家用机游戏
Play,Doujin
手机游戏
东方大炮弹
东方LostWord
东方Dungeon Dive
东方弹幕神乐
东方幻想Eclipse
同人二次创作
同人社团列表
同人志分类
同人专辑分类
同人专辑搜索
原曲作品数量
同人软件列表
Steam游戏列表
同人角色列表
同人视频列表
其他形式同人
同人文章列表
同人画师列表
同人封面角色
东方相关周边
PVCFigure
GarageKit
小型物品
其他形式周边
MUGEN
THB相关项目
THB策划
中文东方人气投票
东深见讲坛
幻想乡柱状地图
THB衍生
同人专辑搜索
原曲认知测验
东方相关QQ群组列表
THB媒体
微博
Bilibili
直播间
GitHub
THB协力
博丽神主ZUN微博
东方我乐多丛志
MineCraft幻想乡
京都幻想剧团
幻奏盛宴
功能与帮助
最近更改
随机浏览
编写规范
收录方针
命名规范
同人社团
同人音乐
封面图片
二次设定
编辑帮助
基础帮助
常用模板
进阶代码
函数用法
编写翻译表
语义维基
样式类用法
颜色列表
工具
链入页面
相关更改
特殊页面
页面信息
其他
联系管理员
关于THBWiki
捐款支持
语言
English
italiano
日本語
中文