魔兽搞图技术高的人来,魔兽官方对战平台我改图了,使用jass覆盖了原地图的jass,但是魔兽官方对
答案:2 悬赏:20 手机版
解决时间 2021-02-24 15:07
- 提问者网友:沉默菋噵
- 2021-02-23 23:43
魔兽搞图技术高的人来,魔兽官方对战平台我改图了,使用jass覆盖了原地图的jass,但是魔兽官方对战平台开这图会直接闪退,进不了,我猜可能图里有平台代码,或是别的问题,请告诉我怎么在平台上进修改过的图,我愿出钱学习,复制的,说屁话的请出门左转
最佳答案
- 五星知识达人网友:夜风逐马
- 2021-02-23 23:57
为毛我可以啊。。。你改的是什么图啊,我也改一下试试。
全部回答
- 1楼网友:话散在刀尖上
- 2021-02-24 00:48
jass(正确地说是jass 2)是魔兽3的程序语言,用于控制游戏和地图的进行,也是魔兽游戏和地图的基础。 地图编辑器中摆放的单位(unit),区域(region) ,触发(trigger)……等,最终都会被翻译成jass语言存在地图文件里,在游戏时被使用。jass在语法结构上比较接近basic,同时也引用了许多c的东西。如果读者有接触过这二种编程语言,相信一定能很快上手!如何使用jass? 触发编辑器中的 edit =>convert to custom text 将触发转成文字型态。 在触发编辑器下面选 actions => custom script 可以插入单行jass叙述。 此外,如果要定义所有触发都能调用的函数 jass语言的基本函数和常量都是直接调用游戏的函数,他们被存放在war3patch.mpq内的scripts\common.j中,另外还有一些扩充函数放在war3patch.mpq内的scripts\blizzard.j中。war3patch.mpq内的scripts\common.ai则包含了用于设计ai的 内部函数和扩展函数,虽然ai也是用jass码编成,但本文不探讨关于ai的设计,有兴趣者请自行研究。 地图中的触发以及物件的摆设情形等,都会被编译成jass并储存在war3map.j文件中。读者可以到we中的 file => export script 将它导出。 jass语言以列为基本单位。每一行的代码必须有完整的意义,不能把一行的代码分两行写;也不可把两行的代码写在同一行。 jass语言是区分大小写的,该大写就要大写;该小写就要小写。 写在//后面,直到该行结束的文字都是注解内容,这也是jass唯一的注释语法。後面的例子会多处用到这个注释符号,这个符号和后面的注释只是用于解释代码的功能,并不会被执行到 。 在jass中,空格的使用限制很宽松,除了某些必要的地方一定要有至少一个的空格以外,其它的地方都是可空可不空。此外,要空几格都无所谓,电脑不会因为你空了很多格就说有错。因此,使用者应多多利用空格作缩进,以使代码更易读。 和数学一样,()内的代码优先被执行。不过请注意,jass中只有小括号()有用,中括号[]和大括号{}不可作为改变执行顺序之用。jass错误处理 语法错误:少写一个字母,少空空格,或者把大写写成小写等,都是写jass常犯的错误。一般来说,如果语法有问题,在存档时电脑会显示编译错误的信息,并指出是哪一行有问题,依它的指示修正即可。不过当电脑指出某行有误时,也可能是前面的几行出了问题(范围大概约1~5行),所以如果你怎么检查都看不出某行到底错在哪里的时候,检查前面的代码。此外,某些错误会导致存档时we当掉,导致先前的辛苦付诸流水,所以请随时存档并尽量小心。 执行错误:一般会发生这种问题是指定的变量没有赋值,当电脑找不到变量的值时,由于无法继续执行,因此会无条件跳出目前的函数,如果该函数是要传回值的函数,它将不会传回值(也是无任何返回),因而可能导致调用它的函数也跳出。此外如除数为0也会造成类似的结果。 无限循环:一般这种事都是人为疏忽(忘了写exitwhen,或是触发的动作引发同一个触发,而造成无限循环等),发生机会不大。不过一旦发生可是会让war3当掉的喔。一定要学jass吗? 当然不一定。即使是官方的战役,其程序员也只使用了gui来完成制作。一般来说,单纯使用gui trigger,就可以达到大多数的功能。但是笔者还是建议对trigger有相当了解的人学些基本的jass写法,可以省下不少力气,且能让你的地图更不lag!!
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯