Skip to content

Commit

Permalink
删除导致无法编译的Unicode替换字符
Browse files Browse the repository at this point in the history
  • Loading branch information
LiarOnce committed May 25, 2024
1 parent e2c59d4 commit 4862fa6
Show file tree
Hide file tree
Showing 11 changed files with 9 additions and 84 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@
"Local variables are fast to process in-game, so make the most of them, and if an expression appears in a code block or script two or more times, think about creating a local variable for it. When using the {}YoYo Compiler (YYC){} targets, if you reference {}global{} or instance variables various times in a function or code block it is particularly beneficial to assign them to a local variable at the start of your code and then reference that local variable, as this will give much better performance.":"局部变量在游戏中处理速度很快,所以要充分利用它们,如果一个表达式在代码块或脚本中出现两次或更多次,考虑为它创建一个局部变量。当使用{}YoYo编译器(YYC){}目标时,如果引用{}global{}如果函数或代码块中多次出现局部变量或实例变量,则在代码开始时将它们赋给局部变量,然后引用该局部变量,因为这将提供给予更好的性能。",
"Note that on the non-WebGL HTML5 target, having multi-coloured, fading particles will require a lot of image caching and will be very slow. However, since particle sprites can be animated, you can create an animated sprite that has sub-images which change colour and then use that for the particle instead. It will still look like a gradual colour change, but not require the constant creation of cache images.":"请注意,在非WebGL HTML5目标上,具有多色,褪色的粒子将需要大量的图像缓存,并且将非常缓慢。然而,由于粒子精灵可以被动画化,因此您可以创建一个具有改变颜色的子图像的动画精灵,然后将其用于粒子。它仍然看起来像是逐渐的颜色变化,但不需要不断创建缓存图像。",
"On this page we are going to cover some \"best practices\" when programming your game, and at the same time explain a little bit about the inner workings of {}GameMaker{}. Before continuing, however, it is worth noting two very important points:":"在本页中,我们将介绍游戏编程时的一些\"最佳实践\",同时解释一下{}GameMaker{}的内部工作原理。然而,在继续之前,值得注意的是两个非常重要的要点:",
"O\uFFFD1Y1E\uFFFD\uFFFD\uFFFD\uFFFD#\uFFFD1\uFFFD\uFFFD\uFFFDظ\uFFFD\uFFFD\u0001iJ\uFFFD\uFFFDt\uFFFD!\uFFFD\uFFFD!z\uFFFD\uFFFD":"\uFFFDNf\uFFFD\uFFFD\uFFFD\u0489N\uFFFD\uFFFDS\uFFFD\uFFFDq)\u000E\uFFFD\uFFFDŞ\uFFFD\uFFFDF\uFFFDE\uFFFD.-{\uFFFDV\uFFFD[\uFFFD\uFFFD\uFFFD#",
"Previously we mentioned {}accessors{} for arrays, but they are also available for data structures, which can help clean up your code and make it much easier to read.":"前面我们提到了数组的{}访问器{},但它们也可用于数据结构,这可以帮助清理代码并使其更容易阅读。",
"So, if you have a number of bullet instances that draw using the {}bm_add{} blend mode - for example - you will be creating a new vertex batch for each one, which is definitely a bad thing! Instead, have a controller object in your game that draws all the bullets instead, like this:":"因此,如果你有许多使用{}bm_add{}混合模式绘制的子弹实例-例如-你将为每一个创建一个新的顶点批处理,这绝对是一件坏事!相反,在你的游戏中有一个控制器对象来绘制所有的子弹,像这样:",
"That is not to say that you shouldn\u0027t use these functions, as they can be very handy. However, you should know which ones to use and when, as they all work slightly differently and will have different speeds. Rough rule of thumb is that the {}place_{} functions are faster than the {}instance_{} functions, which are faster than the {}collision_{} and {}point_{} functions, so read the pages in the manual for each of these types of functions and make sure to choose the most appropriate for every situation.":"这并不是说您不应该使用这些功能,因为它们非常方便。 但是,您应该知道使用哪些以及何时使用,因为它们的工作方式都略有不同,并且速度也不同。 粗略的经验法则是,{}place_{} 函数比 {2}instance_{3} 函数更快,而 instance_ 函数又比 {}collision_{} 和 {}point_{} 函数更快,因此请阅读手册中的页面以了解相关信息 每种类型的功能,并确保选择最适合每种情况的功能。",
Expand All @@ -33,8 +32,6 @@
"With that said, lets move on and look at some general tips for writing good GML code that you can apply at any time...":"说到这里,让我们继续前进,看看一些编写好的GML代码的一般技巧,你可以随时应用。",
"You can also free up the memory associated with an array by setting the variable used to equal 0. So, to clear the array from the code example above you would simply use:":"您还可以通过将变量used设置为等于0来释放与数组相关的内存。因此,要从上面的代码示例中清除数组,您只需使用用途:",
"You can find out more about particles from the page {}Guide To Using Particles{}.":"您可以从{}粒子使用指南{}页了解有关粒子的更多信息。",
"]2\uFFFDl\uFFFD\uFFFD3\uFFFDX\uFFFD(":"",
"ce[1\uFFFD\uFFFDG\uFFFD\uFFFD\uFFFD\uFFFD\u0018\u001A\uFFFDH.\uFFFDqL\uFFFD\u0013\uFFFD{\uFFFD\uFFFD<{b_{\uFFFDg\uFFFD\uFFFDK\uFFFD\uFFFD%kہ\uFFFD\uFFFD?\u001B\u0001f":"\uFFFD\uFFFD\f\uFFFD#Ci\uFFFD\uFFFD=>v\uFFFD\uFFFD#\u000B",
"don\u0027t be afraid to use the trigonometric functions as (contrary to popular belief) they are pretty fast, especially when compared to particles, collisions, strings, etc...":"不要害怕使用三角函数,因为(与流行的观点相反)它们非常快,特别是与粒子,碰撞,弦等相比时。",
"don\u0027t put code that is not for drawing things in the Draw events":"不要在Draw事件中放置不用于绘制的代码",
"use an alarm to call any code that doesn\u0027t have to be called every step (rather than just adding this into the Step event anyway)":"使用alarm来调用任何不必在每一步都调用的代码(而不是将其添加到Step事件中)",
Expand All @@ -54,8 +51,5 @@
"{}Texture Swaps And Vertex Batches{}{}Texture Swaps And Vertex Batches{}":"{}纹理交换和顶点批{}{}纹理交换和顶点批{}",
"{}The above image is an example of a function declaration in a script to illustrate the above points. You can see that it uses the JSDoc style comments to clearly explain what it all does, and the coding style is consistent, with 4 space indents, underscores used for local vars, logged output, etc...":"{}上图是一个脚本中函数声明的例子,用来说明以上几点。你可以看到它使用了JSDoc风格的注释来清楚地解释它的全部功能,并且编码风格是一致的,有4个空格缩进,下划线用于本地变量,日志输出等...",
"{}Use Local Variables{}{}Use Local Variables{}":"{}使用局部变量{}{}使用局部变量{}",
"{}When writing code, you should be aware that when compiling your final game, {}GameMaker{} strips out comments, removes unnecessary line breaks and whitespace, substitutes in constant/macro/enum values, and generally compresses your code down as part of the process. This means that you can add as much whitespace around your code as required and you don\u0027t need to worry about keeping your comments short or only using them sparingly.":"{}在编写代码时,您应该注意,在编译最终游戏时,{}GameMaker{}会删除注释,删除不必要的换行符和空格,替换常量/宏/枚举值,这意味着你可以根据需要在代码周围添加尽可能多的空格,而不必担心保持注释简短或只使用它们有节制地",
"\uFFFD\u001E\uFFFD\uFFFD\uFFFD\b1\uFFFDt\uFFFD[i>\uFFFDԖ\u0000":"\u000B\uFFFD\uFFFDO\uFFFD\uFFFDh\u0001\uFFFD\uFFFD\uFFFD\uFFFD\u0017N\uFFFD<*\bۺ\uFFFD\uFFFD4p",
"\uFFFDcf\uFFFD\uFFFD\u000Fڪ1Y\uFFFD\uFFFD>\uFFFD":"\u001B\\a$\u0000_",
"\uFFFDxΔb":"\f\b\u001B#\uFFFD\u0003\uFFFDs\uFFFDpa\u000E\uFFFD\u030C\u001E)tE\u000E\uFFFD-:\uFFFD\"w\uFFFD\uFFFDL\uFFFD\uFFFD4\uFFFD\u007F\uFFFD\u0001e(\uFFFDm\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD5=R\u00056\u000F\u0002\uFFFD\uFFFD\u0010[\uFFFD\uFFFD\uFFFD\uFFFDG\uFFFDѲ\uFFFD\u001D\uFFFD$"
"{}When writing code, you should be aware that when compiling your final game, {}GameMaker{} strips out comments, removes unnecessary line breaks and whitespace, substitutes in constant/macro/enum values, and generally compresses your code down as part of the process. This means that you can add as much whitespace around your code as required and you don\u0027t need to worry about keeping your comments short or only using them sparingly.":"{}在编写代码时,您应该注意,在编译最终游戏时,{}GameMaker{}会删除注释,删除不必要的换行符和空格,替换常量/宏/枚举值,这意味着你可以根据需要在代码周围添加尽可能多的空格,而不必担心保持注释简短或只使用它们有节制地"
}
14 changes: 1 addition & 13 deletions language/zh/www/Additional_Information/Bitwise_Operators.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
{
"\u0013U\uFFFD\u0004\u007Fܛ-\uFFFD\uFFFD1$":"\uFFFDk\uFFFD\uFFFDH\uFFFDǎ1\uFFFD\uFFFD\u000B\uFFFD!\uFFFD\uFFFD\uFFFD\uFFFDq\uFFFD\uFFFD7\uFFFD\uFFFD\uFFFD<c\uFFFD\uFFFD\uFFFD\uFFFDR\uFFFD\uFFFDg\uFFFD?\u0007\uFFFDLko\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFDX\uFFFD\u001B\uFFFD*\u0BC5$\uFFFD",
"Again, all the bits move on one, and that multiples by 2. So, how about a multiple by 4? Easy, we shift everything left by 2, rather than one. So how about 16, or 128? This would require a left shift of 4 bits, or 7 bits respectively. This is incredibly useful; it means we can do simple multiplications by simply moving bits around. To do this, we use the {}left shift{}&nbsp;operator {}&lt;&lt;{}. Here are some examples:":"同样,所有的位都移到1上,然后乘以2。那么,乘以4怎么样?很简单,我们把所有的东西都左移2,而不是1。那么16或128怎么样?这将分别需要左移4位或7位。这是非常有用的;这意味着我们可以通过简单地移动位来完成简单的乘法。为此,我们使用{}左移{}运算符{}&lt;&lt;{}。下面是一些例子:",
"All the bits in this case have moved to the left by one, making it move from the 3rd bit, to the 4th, and changing the value from 4 to 8. How about a larger number?":"在这种情况下,所有的位都向左移动了一位,使它从第3位移动到第4位,并将值从4更改为8。",
"As you can see, where there is a 1 in each value, the 1 is kept, and where there is a mix or 0\u0027s and 1\u0027s these are reset to 0. Here\u0027s the truth table for {}AND{}ing:":"正如你所看到的,每个值中有1的地方,1被保留,如果有0和1的混合,这些被重置为0。下面是{}AND{}的真值表:",
Expand Down Expand Up @@ -57,22 +56,11 @@
"What about clearing flags? Well this is where the bitwise \"{}&amp;{}\"&nbsp;{}AND{}&nbsp;operation comes in. When you {}AND{} something, the bits that are set in the mask are kept, while the bits that are clear in the mask, are removed - like this:":"那么清除标志呢?这就是按位\"{}&amp;{}\"{}AND{}操作的用武之地。当您执行{}AND{}操作时,掩码中设置的位将保留,而掩码中清除的位将被删除-如下所示:",
"What if you wanted to check to see if something was a power of 2? Well, here\u0027s a neat little trick.. This will return {}true{} if the given value&nbsp;is a power of 2:":"如果你想检查某个值是否是2的幂呢?好吧,这里有一个巧妙的小技巧。.如果给定的值是2的幂,这将返回{}true{}:",
"What this does the first time it\u0027s run is {}0 ^ 1 = 1{}, then the second time {}1 ^ 1 = 0{}, thereby toggling things back and forth from 0 to 1.":"它第一次运行时的情况是{}0 ^ 1 = 1{},第二次运行时是{}1 ^ 1 = 0{},从而在0和1之间来回切换。",
"]\u0010\uFFFD\uFFFD\uFFFDL-\u0001\uFFFD{\uFFFD\uFFFD\u0002\\Bg\uFFFDbQ\uFFFDr\uFFFDW8\u0002vDz\uFFFD\uFFFD_\uFFFD4b\uFFFD\uFFFD":"Q\uFFFD\uFFFD\uFFFD\uFFFD\uFFFDX\u001C\uFFFD\uFFFD\uFFFD\u001Cg\u0001\uFFFDZI\uFFFD\uFFFDeY\b\uFFFDo\uFFFD\uFFFD8\uFFFD\uFFFD\u001F\uFFFD\"\u0013\u0016D\uFFFD0%\u0004\uFFFDt\\\uFFFD\u038B\uFFFD&\uFFFD\u0027\uFFFD-q\u0000L\u0017\u0000\uFFFD\uFFFD\uFFFDEN`78fe\uFFFD\u0003\uFFFD\uFFFD\f\u0000\uFFFDs\uFFFD@\uFFFD\uFFFDB\uFFFD\u0019\uFFFD\uFFFDv\u0014b\uFFFD\uFFFD>\uFFFD\u0005\uFFFD\u00000\uFFFD\uFFFD$!W@\uFFFD\uFFFD(\uFFFD\uFFFDKmt|\uFFFD\uFFFDw\uFFFD\uFFFDq|\uFFFD\u0019\u0007Rm\uFFFDb\uFFFD1\uFFFD",
"]K\uFFFD\uFFFD\uFFFD\uFFFDc\uFFFDG\uFFFDM\uFFFD\uFFFDL\uFFFD{T\uFFFD\u001E\uFFFDI\uFFFD]\u001Fڂ\uFFFD\u00007\uFFFD\uFFFDKe\uFFFD_\uFFFDI\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD":"\fZ\uFFFD\u0013\uFFFD\uFFFD\uFFFDz\u0015\uFFFDڪ9\u0016\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\u007F\u007F.\uFFFD\uFFFDa\uFFFDV7\uFFFD\u001D\uFFFD\uFFFD\uFFFD\u0004τ\uFFFDME\u000B\uFFFDj\f\uFFFD\u0014wM\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD\uFFFD:\uFFFD>\uFFFD\uFFFD0\uFFFDn\uFFFD\uFFFD:xH",
"]\uFFFD\u0027T\u000FAI\uFFFDL\uFFFD\uFFFD\uFFFD(\uFFFD":"",
"a\uFFFD\uFFFD\uFFFD\u0002\uFFFD\u0012k\uFFFDO\uFFFD\uFFFD8\uFFFD\uFFFD\uFFFD\u0016M\uFFFD\uFFFDȪG\u0004\uFFFDC\uFFFD\u0019\u0014":"\u000B\uFFFD4\uFFFD&_\uFFFDj\uFFFD~\uFFFD\uFFFDK\uFFFD\u001D\uFFFD\u0352\uFFFDk\u001AI\uFFFDz\uFFFD\u001F\uFFFD\u0007Zc\u0013\uFFFD\uFFFD\uFFFDJ\uFFFD7\uFFFD\uFFFD\u000BG\uFFFDf -l`\uFFFD\uFFFD\uFFFDf\uFFFD\uFFFD\uFFFD\uFFFDo\uFFFD+3s\uFFFD",
"{}GameMaker{} developers&nbsp;often use the function {}place_free(){}, and then when a collision is found, try to slowly move the object out by either looping around an {}x{} or {}y{} position while continuing to execute that function, or by using the {}move_outside_all(){} function.":"{}GameMaker{} 开发者经常使用函数 {}place_free(){},然后当发现碰撞时,尝试通过围绕 {}x{} 或 {}y{} 位置循环来缓慢移出对象 继续执行该函数,或使用 {}move_outside_all(){} 函数。",
"{}Index Alignment{}{}Index Alignment{}":"{}索引对齐{}{}索引对齐{}",
"{}Keys And Doors{}{}Keys And Doors{}":"{}钥匙和门{}{}钥匙和门{}",
"{}Looping Counters{}{}Looping Counters{}":"{}循环计数器{}{}循环计数器{}",
"{}Power Of 2 Check{}{}Power Of 2 Check{}":"{}2次幂校验{}{}2次幂校验{}",
"{}Tile Alignment{}{}Tile Alignment{}":"{}平铺对齐{}{}平铺对齐{}",
"{}{}NOTE{}{}&nbsp;To write binary literals in GML, prefix them with {}0b{}&nbsp;(e.g. {}0b0010{}). See&nbsp;{}Data Types{}&nbsp;for more information.":"{}{}注意{}{}要在GML中写入二进制文字,请在其前面加上{}0b{}(例如{}0b0010{})。有关详细信息,请参阅{}数据类型{}。",
"\uFFFD\u0016\u0014\uFFFD\uFFFD?\uFFFD\u02D2\uFFFD\u0018\uFFFDL\uFFFDP^zc\u000F":"\uFFFDG\uFFFD",
"\uFFFD\u001C\uFFFD\uFFFDT\uFFFD\uFFFD|0c\uFFFDpQ\uFFFD\u001B@5\u0002\uFFFD\uFFFD":"",
"\uFFFDH\u0015\uFFFDj\uFFFD\u001F":"_\uFFFD{\uFFFD\uFFFD\u0017\uFFFD\uFFFD\uFFFD\uFFFD=\uFFFD\uFFFD~\u0013\uFFFD\uFFFD8\uFFFD\uFFFDu\uFFFD<琟\uFFFDn\uFFFD\uFFFD?\uFFFD\u0003",
"\uFFFDd\uFFFD\uFFFDp\uFFFD\u0010y":"\f_\uFFFD\uFFFD\uFFFD\uFFFD\u001D\uFFFD\uFFFD_`&z\u036FPs\uFFFD\uFFFD\uFFFDr\u000E\uFFFD\u000F\uFFFD\u0002\uFFFDƜ&\uFFFDi\uFFFD\uFFFD\uFFFD\uFFFD\u001E\u02BA\uFFFD\uFFFD\uFFFD\uFFFD\u0016\uFFFD@f\uFFFD\uFFFD\u0005\\\uFFFD\uFFFD\uFFFD\uFFFD\uFFFDA7\uFFFDOs<\uFFFDO\uFFFD",
"\uFFFD\uFFFD\u0016\uFFFD\uFFFD\uFFFDw\uFFFDŴ\uFFFDV\uFFFDu":"\u000B\uFFFDb\u074A\uFFFD\u0019VV\u0017\u0005\uFFFD\uFFFD\u000E\u0018\uFFFD\uFFFD",
"\uFFFD\uFFFDw\uFFFD\uFFFD\uFFFD9\uFFFDr\uFFFD\uFFFD\uFFFDO+\uFFFD\uFFFD>\uFFFD\uFFFDX\uFFFD\uFFFDu\uFFFD\uFFFD\uFFFDF\uFFFD\u001D\uFFFD\\\uFFFD\u001B?v":"jvJ\u0014\u0014\uFFFD\uFFFD\"\uFFFDghΰ\uFFFDT\uFFFD\uFFFD\\\uFFFD\u0016\uFFFD\uFFFD\bw",
"\uFFFD\uFFFD\uFFFD\u0004Zi\uFFFD\uFFFD\uFFFD2\uFFFD\u0014\uFFFD!":"\uFFFDL1q4\uFFFDb\uFFFD->4\uFFFD\uFFFD\uFFFDiemg\uFFFD\uFFFD\u0017|\uFFFD\uFFFD~\uFFFD\uFFFD\u0004\uFFFD+_\uFFFD\u000E\uFFFD\uFFFD:=\uFFFD?F$\uFFFD\"\uFFFD\u001AMB\uFFFDv$\uFFFD\t\uFFFD\uFFFD\u0013\uFFFD\uFFFDy\uFFFD\uFFFD7\uFFFDM4\tB2{b\uFFFD\uFFFD0\uFFFD\uFFFD[\uFFFDP\u0007\uFFFD*\uFFFD\uFFFDN\uFFFD\uFFFDwI\uFFFD\uFFFD\uFFFDA\\b\uFFFD^)\uFFFDݰ8\uFFFD<d\u001B\u0007F\uFFFDd\uFFFDGgc\uFFFD\uFFFD\f\uFFFD\uFFFDF2\uFFFDt\u0000\uFFFD\uFFFD-\uFFFD\uFFFD\uFFFDYJ0=\uFFFD\uFFFDQ\uFFFDB\uFFFD\\\uFFFD1\uFFFDb\u001B\uFFFD\uFFFD\u0002|\uFFFDrF{"
"{}{}NOTE{}{}&nbsp;To write binary literals in GML, prefix them with {}0b{}&nbsp;(e.g. {}0b0010{}). See&nbsp;{}Data Types{}&nbsp;for more information.":"{}{}注意{}{}要在GML中写入二进制文字,请在其前面加上{}0b{}(例如{}0b0010{})。有关详细信息,请参阅{}数据类型{}。"
}
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
{
"\u0007u\uFFFD\uFFFD\u0002\uFFFD\uFFFD\uFFFD\uFFFD":"B\u0005$\uFFFDQ\uFFFD\uFFFD\u0013\uFFFD\uFFFD6",
"A previous compile error has caused the compiler parse tree to not be created and thus the compiler has no program data to compile":"以前的编译错误导致编译器分析树未被创建,因此编译器没有要编译的程序数据",
"A script or function has been called that the compiler does not recognise (this error is usually thrown by empty script asset references since the compiler will strip out these assets on compile)":"编译器无法识别的脚本或函数被调用(此错误通常由空脚本资源引用引发,因为编译器将在编译时剥离这些资源)",
"Compile Errors":"编译错误",
Expand Down

0 comments on commit 4862fa6

Please sign in to comment.