GTA CLEO 制作教程(6)





CODE
代码
0002: jump
@akt_01
0002:跳@ akt_01

The
conditional check of a key press in the script below should be
passed by pressing
BACKSPACE
一个在下面的脚本按键有条件的应通过检查,按退格





CODE
代码
{$CLEO
.cs}
($ CLEO的。政务司司长)

:Akt
:AKT公司

03A4:
name_thread ‘AKT’
03A4:name_thread’AKT的’

08B2:
toggle_thermal_vision 1
08B2:toggle_thermal_vision
1

:Akt_01//—————————-Loop
adresse
:Akt_01
//—————————-循环地址

0001: wait 0
ms
0001:等待0毫秒

if如果
0AB0:
  key_pressed 8
0AB0:key_pressed
8

004D:
jump_if_false @Akt_01//——–jump instruction by negation

004D:@ Akt_01 jump_if_false //——–跳转指令的否定

08B2:
toggle_thermal_vision 0
08B2:toggle_thermal_vision
0

0A93:
end_custom_thread
0A93:end_custom_thread



Script above
activates the Infrarot view and toggle back to normal view by
key_press
上面的脚本激活Infrarot意见,并通过key_press切换回到普通视图

The reading
process is looping as long as BACKSPACE is not
pressed
阅读过程是循环,只要BACKSPACE键没有按下

the jump
instruction by negation sends the reading process allways to the
label :Akt_01
由否定跳转指令发送到阅读过程永诺标签:Akt_01

1000 times per
second
每秒1000次

______________________________________________________________________________________
______________________________________________________________________________________

The IF –
Variation
中频-变异





CODE
代码
if如果
00FF:
  actor $PLAYER_ACTOR  1
(in-sphere)near_point_on_foot 2493.5  -1682.5
 13.35 radius  1.0
 1.0  1.0
00FF:演员$
PLAYER_ACTOR 1(球)near_point_on_foot 2493.5 -1682.5 13.35半径1.0 1.0
1.0

004D:
jump_if_false @Teleport_2
004D:jump_if_false @
Teleport_2

By more than
one question in an conditional check requires to
determine,
由多个在有条件的检查问题需要确定,

if it
means
如果这意味着
if or
如果或

or
if and
如果和





CODE
代码
if
and
如果和

00DF:
  actor $PLAYER_ACTOR driving
00DF:演员$
PLAYER_ACTOR驾驶

8119:
  NOT   car [email protected] wrecked

8119:不破坏车0 @

004D:
jump_if_false @AD_5
004D:jump_if_false @ AD_5





CODE
代码
if
or
如果或

00E1:
key_pressed 0 0
00E1:key_pressed 0 0

00E1:
key_pressed 0 1
00E1:key_pressed 0 1

00E1:
key_pressed 0 14
00E1:key_pressed 0 14

00E1:
key_pressed 0 18
00E1:key_pressed 0 18

004D:
jump_if_false @AD_7
004D:jump_if_false @ AD_7





CODE
代码
if
or
如果或

8118:
  NOT   actor [email protected] dead

8118:不演员死亡7 @

8118:
  NOT   actor [email protected] dead

8118:不演员死亡8 @

004D:
jump_if_false @AD_25
004D:jump_if_false @ AD_25

0002: jump
@AD_12
0002:跳@ AD_12

The most
question codes can be changed into the opposite
question
最问题的代码可以改为相反的问题

by changing
the ciro of the opcode into 8 and insert “not” into the code
line
通过改变成8的操作码奇罗并插入“没有到代码行”

exemble:
exemble:





CODE
代码
00E1:
key_pressed 0 10
00E1:key_pressed 0 10


and





CODE
代码
80E1: NOT
key_pressed 0 11
80E1:不key_pressed 0 11

______________________________________________________________________________________
______________________________________________________________________________________

Next Step/ Script structure
simple
下一步/脚本结构简单

The previous
scripts ended because of the opcode 0A93:
end_custom_thread
以前的脚本结束,因为码0A93:end_custom_thread

Instead let
the script ending we use a jump instruction at script end to the
1.Loop adress
而是让我们使用脚本结束在脚本结束1.Loop地址跳转指令

So the reading
process is permanent looping
因此,阅读过程是永久性的循环





CODE
代码
0002: jump
@Akt_01
0002:跳@ Akt_01


And since now
we add a check in our loop which we add allways after a Loop
adress.
既然现在我们向我们的循环检查,我们向永诺后循环地址。

It
is:
它是:





CODE
代码
if如果
0256:
  player $PLAYER_CHAR defined
0256:$
PLAYER_CHAR定义播放器

004D:
jump_if_false @Akt_01
004D:jump_if_false @
Akt_01


It should
prevent crashes if the player dies or gets
arrested
它应防止崩溃如果玩家去世或得到被捕

The “IF
Player- Defined-check” should allway be the first check in a
loop
中频播放器“定义检查”应荃威是在循环中首先检查

Script
structure simple with 1 Loop:
脚本结构简单,一环:

-Script
head
脚本头

-1.Loop-Adress – 1.Loop –
Adress

-wait
code
等待的代码

-IF
player_defined-check
中频player_defined检查

-Conditional
Check
-条件检查

-Event
-事件

-Normal jump
instruction to 1.LoopAdress
非正常跳转指令来1.LoopAdress





CODE
代码
{$CLEO
.cs}
($ CLEO的。政务司司长)

:Akt
:AKT公司

03A4:
name_thread ‘AKT’
03A4:name_thread’AKT的’

:Akt_01
:Akt_01

0001: wait 0
ms
0001:等待0毫秒

if如果
0256: player
$PLAYER_CHAR defined
0256:$ PLAYER_CHAR定义播放器

004D:
jump_if_false @Akt_01
004D:jump_if_false @
Akt_01

if如果
0AB0:
  key_pressed 8//—————–key =
Backspace
0AB0:key_pressed 8 //—————–
=退格键

004D:
jump_if_false @Akt_01
004D:jump_if_false @
Akt_01

08B2:
toggle_thermal_vision 1
08B2:toggle_thermal_vision
1

0001: wait
3000 ms
0001:等待3000毫秒

08B2:
toggle_thermal_vision 0
08B2:toggle_thermal_vision
0

0002: jump
@Akt_01//——–Normal jump instruction to 1.LoopAdress

0002:跳@ Akt_01 //——–正常跳转指令来1.LoopAdress


 
Source: New feed

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください