找回密码
 点一下
查看: 1015|回复: 11

CJASS

[复制链接]
发表于 2012-12-24 05:30:26 | 显示全部楼层 |阅读模式
问下哪种UI插件可以直接编辑CJ语法,YDWE不行
或者有什么编辑器可以解决
发表于 2012-12-24 14:57:05 | 显示全部楼层
YDWE应该可以吧

点评

问下希瓦,什么是CJ、什么又是VJ他们和J有什么不同?  详情 回复 发表于 2012-12-30 20:36
回复

使用道具 举报

发表于 2012-12-30 20:36:07 | 显示全部楼层
希瓦 发表于 2012-12-24 14:57
YDWE应该可以吧

问下希瓦,什么是CJ、什么又是VJ他们和J有什么不同?

点评

国外WE玩家弄出来的东西 在专用编译器里面里面写代码,然后最终转换成Jass运行 就像Trigger在触发编辑器里面写触发,最后也会转换成Jass cj和vj和Jass一样都是一大堆乱七八糟的代码 不过是不同的代码,代码风格  详情 回复 发表于 2012-12-30 22:20
回复

使用道具 举报

发表于 2012-12-30 22:20:32 | 显示全部楼层
allennai 发表于 2012-12-30 20:36
问下希瓦,什么是CJ、什么又是VJ他们和J有什么不同?

国外WE玩家弄出来的东西
在专用编译器里面里面写代码,然后最终转换成Jass运行
就像Trigger在触发编辑器里面写触发,最后也会转换成Jass

cj和vj和Jass一样都是一大堆乱七八糟的代码
不过是不同的代码,代码风格不一样
区别是cj使用类似c语言的语法,vj面向对象

点评

VJ面向对象是什么意思?  详情 回复 发表于 2012-12-31 01:51
回复

使用道具 举报

发表于 2012-12-31 01:51:49 | 显示全部楼层
美味豆沙包 发表于 2012-12-30 22:20
国外WE玩家弄出来的东西
在专用编译器里面里面写代码,然后最终转换成Jass运行
就像Trigger在触发编辑器 ...

VJ面向对象是什么意思?

点评

百度一下你就知道 搜索“面向对象”  详情 回复 发表于 2012-12-31 09:43
回复

使用道具 举报

发表于 2012-12-31 02:37:56 | 显示全部楼层
allennai 发表于 2012-12-31 01:51
VJ面向对象是什么意思?

额。。。这个是编程的术语了

打比方的话就是:
一个触发
第一秒XX做什么事
第二秒YY做什么事
第三秒……
这种类型的叫面向过程
就是按照一定的流程或顺序做动作,YY要做事必须在XX做事之后

给XX建立触发A
如果时间过去了1秒,则做什么事
给YY建立触发B
如果时间过去了2秒,则做什么事
触发C
……
这种叫面向对象
就是为每一个事物单独弄一套动作,每两个事物之间并没有直接联系(可以有间接关联,比如YY要用到XX做出来的东西)

虽然结果是一样的,但两种方式的解决问题的思路是完全不同的

嘛。。上面的比方只是个大概的概念,跟实际的意义并不完全一样,如果LS并不懂编程的话个人建议不要深入理解这个词,会晕的。。虽然并不难理解

点评

完全不懂...  详情 回复 发表于 2012-12-31 23:50
汗,龙没学过编程吧...  发表于 2012-12-31 09:46
回复

使用道具 举报

发表于 2012-12-31 09:43:54 | 显示全部楼层
allennai 发表于 2012-12-31 01:51
VJ面向对象是什么意思?

百度一下你就知道
搜索“面向对象”
回复

使用道具 举报

发表于 2012-12-31 10:46:05 | 显示全部楼层
美味豆沙包 发表于 2012-12-31 09:43
百度一下你就知道
搜索“面向对象”

LS为什么说我没学过呢?
用触发器来讲的话个人觉得也只能这样了。。
回复

使用道具 举报

发表于 2012-12-31 23:50:50 | 显示全部楼层
chyj4747 发表于 2012-12-31 02:37
额。。。这个是编程的术语了

打比方的话就是:

完全不懂...
回复

使用道具 举报

发表于 2013-1-1 00:02:13 | 显示全部楼层
本帖最后由 chyj4747 于 2013-1-1 00:03 编辑
allennai 发表于 2012-12-31 23:50
完全不懂...


好吧。。上面的比方是有点不对额……
就是你给一个类型的事物建立好一套动作后,所有属于这类型的事物都可以做建立好的所有的动作

比如你给“人”这类事物建立“吃饭”“睡觉”“学习”三个动作
那么你、我、别人等各种属于“人”这一类的都做或者说可以做上面定义的三件事
“人”叫做类,你、我、别人这些叫做“对象”
以这种思维方式来编写程序就叫“面向对象”

在J里是很难建立这样一种“类”的功能的,VJ可以~


再不懂却还想弄懂的话就百度吧……

点评

有一点点明白了,你我他都是人,面对着我们相同对象的J就是CJ?  详情 回复 发表于 2013-1-1 12:41
回复

使用道具 举报

发表于 2013-1-1 12:41:45 | 显示全部楼层
chyj4747 发表于 2013-1-1 00:02
好吧。。上面的比方是有点不对额……
就是你给一个类型的事物建立好一套动作后,所有属于这类型的事物 ...

有一点点明白了,你我他都是人,面对着我们相同对象的J就是CJ?
回复

使用道具 举报

发表于 2013-1-1 13:45:37 | 显示全部楼层
本帖最后由 希瓦 于 2013-1-1 14:04 编辑

面向对象是一种程序设计的思想和方法,它的核心思想是“抽象”“封装”以及“继承”

抽象是指对问题和事物进行抽象,提取事物的本质的过程
比如:“步兵A”和“骑士B”都可以抽象为“单位”,使得我们使用不同单位的时候可以统一处理

封装是指对对象实现的细节进行隐藏,使得用户只需要关心使用的接口即可
比如:魔兽中的“单位”就是一个对象,我们不用管一个单位攻击移动的时候需要调用哪个函数,修改哪些属性,只需要发布命令即可

继承是指在一个对象类的基础上增加属性和方法派生出更多的类
比如:英雄单位拥有普通单位拥有的所有属性,并且还拥有普通单位没有的属性,那么不必新建一个英雄类,只需要继承普通单位,在它的基础上增加属性即可

可以想象如果魔兽没有使用面向对象的思想,那么我们创建单位的时候也许需要先定义很多个变量来记录单位属性,然后再调用函数在屏幕上显示一个单位的模型,还需要监听各种事件执行不同的函数.....而现在我们可以把单位当成真正存在的物体进行处理,这都是面向对象思想的先进性了

可惜的是,虽然魔兽是面向对象的,但是Jass却不是
所以有人开发了VJ这个面向对象的语言,不过最终VJ还是会编译为Jass运行,只是在写某些的时候要方便一些而已

那么VJ就一定比Jass好吗?
答案是否定的,首先它的运行效率肯定比Jass低
其次我们在写一个简单的游戏流程时,可能根本不需要用到“面向对象”的思想
而且Jass能够实现VJ能实现的一切效果,只要心中有面向对象的思想,面向过程的语言也能写出面向对象的感觉

所以,VJ、CJ什么的并不是必学的,它们不是Jass的“进阶”,但要是感兴趣也可以学一下

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-11-23 10:49 , Processed in 0.117590 second(s), 22 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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