QQ登录

只需一步,快速开始

 找回密码
 定下契约(新注册)

QQ登录

只需一步,快速开始

查看: 1228|回复: 3
收起左侧

[GTAF进口]CLEO 不完全教程

[复制链接]

璞玉 Potential

Rank: 4

UID
1471
宝石
7 粒
金币
994 枚
节操
1 斤
灵石
0 块
精力
35 ℃
QQ
发表于 2012-5-1 01:38:28 | 显示全部楼层 |阅读模式

你这样只看不注册,真的大丈夫?~

您需要 登录 才可以下载或查看,没有账号?定下契约(新注册)

x
本帖最后由 kwanz 于 2012-5-1 14:46 编辑

原帖地址 / Original Post:www.gtaforums.com/index.php?showtopic=415966
[CLEO 不完全教程]

原帖作者 / Author:Deji ,From GTAForums
翻译 / Translator:Oven_N,From 虚拟世界

未经许可 谢绝转载

前言
本教程主要介绍一些CLEO的小技巧,其中最有价值的是菜单面板代码的初步编写
其它两部分分别为随机数生成及计时器,它们都在《CLEO编程教程》有详细讲解
这里就只稍微提一下
正文
前略
Making Panels/创造面板
【我最讨厌的东西之一,为了做这样一个简单的东西就需要编写大量代码,让人反感。】它是个像菜单一样的面板,让玩家可以在上面选择某些选项。
【我将要教的是你该怎么做,至于用法需要由你自己去尝试和创新。】
首先我们需要创造一个面板……
  1. 08D4: 0@ = create_panel_with_title 'MYPAN' position 29.0 170.0 width 180.0 columns 1 interactive 1 background 1 alignment 0
复制代码

0@ 是储存及访问这个面板的局部变量。不知道什么是局部变量的话去看《CLEO编程教程》。
'MYPAN'是显示在这个面板顶部的标题(SA花式字体哦~)。不要以为标题显示的就是“MYPAN”这串字符,实际上它显示的是GXT文件里该名称对应的文字。不知道什么是GXT文件的话同样去看《CLEO编程教程》。

position 29.0 170.0 表示面板的位置。因为是显示在屏幕上的2D界面所以你不需要Z轴,具体多少由你自己决定。

width 180.0 是面板的宽度,用处你应该清楚。

columns 1 表示一共有多少列,不明白的话……幼儿园欢迎您。

interactive 1 表示是否能够选择面板里面的选项,1表示是,0表示否。

background 1 表示是否显示半透明的背景,参数同上。

alignment 0 表示对齐方式,有左对齐、右对齐和居中(作者没写对应数值,自己试吧……)

现在你创建了个什么都没有的基本面板,接着我们往里面加点料!
  1. 08DB: set_panel 0@ column 0 header '50' data '1' '2' '3' '4' '5' '6' '7' '8' '9' '0' '11' 'DUMMY'
复制代码

0@ 代表你刚创建的那个面板

column 0 代表你要设置的那一列

header '50' 代表菜单选项之前的提示文字,看起来挺丑的,如果你要加一些提示文字就写在这儿吧。

data '1' '2'...'DUMMY' 表示各列,绝对不要删除其中任何一项,否则后果你懂的。如果有哪一行不用的话在单引号内写“DUMMY”即可。

同样的,'50' '1' '2' ...这些单引号内的文字都应对应一个GXT项目名。在以上参数中'1' 为第一行选项,'DUMMY'为最后一行

你还可以用Opcode:08EE 来专门对面板内某一行进行设置,可带一个数值变量显示,虽然有些繁琐但操作更准确一些。

现在你终于有了一个有着不同选项的面板!可以用上下键选择项目!不过很可惜,当你按选择键(跑步,默认空格)或退出键(进出车辆,默认回车)时,什么都不会发生~

译者的附加说明:
面板部分居然就到此为止,坑爹呐……

关于08EE,我去Opcode数据库查了一下,是这样子的:
  1. 08EE: set_panel $IMPORT_CAR_PANEL column 1 row 4 text_1number GXT 'DOLLAR' number $IMPORT_CAR_PRICE
复制代码
参数依次为
$IMPORT_CAR_PANEL:储存面板的变量
column 1:列数
row 4:行数
'DOLLAR':GTX项目名
$IMPORT_CAR_PRICE:数字(用途不明?)
作用应该是把某一指定的菜单项设成GXT文字+数字这样的格式(大概是指像商店里买东西的菜单那种带价格的项目),具体大家可以在SB中搜索panel,把列出的Opcode都琢磨试验一下。

继续翻译
Randomization Tutorial/生成随机数

其实主要的内容就两个Opcode(用跳转列表的那个没啥实用性,就不翻了)
  1. 0209: 0@ = random_int_in_ranges Min Max
  2. 0208: 0@ = random_float_from Min _to_ Max
复制代码

在Min与Max之间生成一个随机数然后存到变量0@里

0209生成整数,0208生成浮点数(就是带小数点的数)
Using Timers/使用计时器

简单地讲就是在游戏运行期内局部变量32@和33@的值每过1毫秒(千分之一秒)会自动加1,这个特性可用于做计时器。比如把32@设为0后就开始循环检查该变量,当到超过指定时间后触发事件啥的……

评分

参与人数 3宝石 +4 金币 +40 精力 +4 收起 理由
Sid + 2
kwanz + 20 + 2 Revised. Well done.
3DMax + 2 + 20 + 2 全部都给你.

查看全部评分

传奇 Legend

Rank: 16

UID
220
宝石
122 粒
金币
1082 枚
节操
44 斤
灵石
0 块
精力
49 ℃
发表于 2012-5-1 01:51:15 | 显示全部楼层
以后再多找些教程,对论坛有一定的贡献.

评分

参与人数 1金币 +8 收起 理由
root + 8 抢楼奖励

查看全部评分

传奇 Legend

谷歌翻译坑爹人肉版(不是人肉饭)

Rank: 16

UID
83
宝石
140 粒
金币
573 枚
节操
30 斤
灵石
0 块
精力
32 ℃
发表于 2012-5-1 07:58:21 来自手机 | 显示全部楼层
先支持,迟点再来校对+加分。。。

点评

Sid
啥- - DA都不用了  发表于 2012-5-1 17:19

璞玉 Potential

亞麻色頭髮的少女

Rank: 4

UID
402
宝石
14 粒
金币
296 枚
节操
10 斤
灵石
0 块
精力
11 ℃
发表于 2012-5-1 09:07:42 来自手机 | 显示全部楼层
辛苦了…
這貼很有價值

点评

盗头像可耻  发表于 2012-5-1 14:32
BASS Line

本版积分规则

    切换繁體
    Archiver|手机版|小黑屋|

GMT+8, 2024-11-5 17:20 , Processed in 0.114938 second(s), 75 queries .

沪ICP备2021020632号-1

快速回复 返回顶部 返回列表