找回密码
 点一下
查看: 1628|回复: 13

太久不做地图,结果

[复制链接]
发表于 2012-10-19 22:19:24 | 显示全部楼层 |阅读模式
  我对我写的jass代码的意思有点迷糊了,果断改进了
使用了vjass之后, 本来是RF[Formula[1]],改进之后变成了Item[Formula[FormulaCount].itemindex[1]].RF
感觉自己有点为了vjass而vjass,
唉,算了,后面这种我更加容易理解
发表于 2012-10-21 07:57:54 | 显示全部楼层
原来还会jass啊。

点评

@chjy747 沉默求助vjass问题 struct ItemStruct{ int Id int fId int Stack int StackMax string RF } ItemStruct array Item [500] 我声明了这样一个结构数组,在地图初始化的时候为每个都附上了值 c  详情 回复 发表于 2012-10-21 12:21
回复

使用道具 举报

 楼主| 发表于 2012-10-21 12:21:00 | 显示全部楼层
本帖最后由 lia77593 于 2012-10-21 12:27 编辑
jpg 发表于 2012-10-21 07:57
原来还会jass啊。

@chjy747 沉默求助vjass问题(还使用了cjass的语法)
[jass]
struct ItemStruct{
int Id
int fId
int Stack
int StackMax
string RF
}
[/jass]
ItemStruct array Item [500]
我声明了这样一个结构数组,在地图初始化的时候为每个都附上了值
[jass]
void StoreItemData(int index, string name, int itemId, int fakeItemId,int stack,int
stackmax){
    int i
    ItemCount++
    i = ItemCount
    call Item.create()
    Item.Id = itemId
    Item.fId = fakeItemId
    Item.RF = ""
    Item.Stack = stack
    Item.StackMax = stackmax
}
[/jass]
但是等到一段时间后(10秒后),所有的数据都是最后一个存储的数据
[jass]
int ItemIndex(item whichItem){
    integer itemTypeId = GetItemTypeId(whichItem)
    integer i = 1
    loop
        exitwhen i > ItemCount
        BJDebugMsg(I2S(Item.fId))
        BJDebugMsg(I2S(Item.Id))
        if ( Item.Id == itemTypeId ) or ( Item.fId == itemTypeId )  then
            return i
        endif
        i++
    endloop
    return 0
}
[/jass]
这个函数运行输出的数据都是一样的!除了最后一件物品,都是返回0.
这是什么原因?

回复

使用道具 举报

发表于 2012-10-21 13:20:25 | 显示全部楼层
别问我我不懂!

点评

沉默不懂!  详情 回复 发表于 2012-10-22 02:26
回复

使用道具 举报

 楼主| 发表于 2012-10-21 17:44:55 | 显示全部楼层
@疯人¢衰人   求帮助
回复

使用道具 举报

发表于 2012-10-21 19:04:12 | 显示全部楼层
lia77593 发表于 2012-10-21 17:44
@疯人¢衰人   求帮助

只懂纯J
vj是坑爹的东西

点评

好吧,自己来申明数组什么的好了  详情 回复 发表于 2012-10-21 19:13
回复

使用道具 举报

 楼主| 发表于 2012-10-21 19:13:22 | 显示全部楼层
疯人¢衰人 发表于 2012-10-21 19:04
只懂纯J
vj是坑爹的东西

好吧,自己来申明数组什么的好了
回复

使用道具 举报

发表于 2012-10-22 02:26:12 | 显示全部楼层
jpg 发表于 2012-10-21 13:20
别问我我不懂!

沉默不懂!
回复

使用道具 举报

发表于 2012-10-22 16:40:36 | 显示全部楼层
VJ是坑孙子的东西



没人发现,没人发现~
回复

使用道具 举报

发表于 2012-10-22 18:46:52 | 显示全部楼层
咳咳,我什么都没发现
回复

使用道具 举报

发表于 2012-10-22 21:09:03 | 显示全部楼层
本帖最后由 chyj4747 于 2012-10-22 21:10 编辑
lia77593 发表于 2012-10-21 12:21
@chjy747 沉默求助vjass问题(还使用了cjass的语法)
[jass]
struct ItemStruct{


要不你加个结构体初始化方法试试?

最近忙就不帮你测了。。话说@没有收到哎……
回复

使用道具 举报

 楼主| 发表于 2012-10-22 23:09:01 | 显示全部楼层

method create  ..
我已经不想用vj了...

使用纯J是不会出这种错误的!
回复

使用道具 举报

发表于 2012-10-22 23:43:52 | 显示全部楼层
lia77593 发表于 2012-10-22 23:09
method create  ..
我已经不想用vj了...

我表示。。CJ什么的没学过……
虽然长得跟C差不多。。

话说个人觉得语言什么的还是区别大一点比较好。。CJ写惯了写C的时候各种call就悲剧了……

点评

cj的语法也很坑爹啊,比如#define XX = 5,必须要加等于号, 函数的大括号{必须写在和函数声明的同一行,小括号)的后面 话说现在写c真的有一种打call的冲动!  详情 回复 发表于 2012-10-23 00:03
回复

使用道具 举报

 楼主| 发表于 2012-10-23 00:03:27 | 显示全部楼层
chyj4747 发表于 2012-10-22 23:43
我表示。。CJ什么的没学过……
虽然长得跟C差不多。。

cj的语法也很坑爹啊,比如#define XX = 5,必须要加等于号,
函数的大括号{必须写在和函数声明的同一行,小括号)的后面
话说现在写c真的有一种打call的冲动!
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-9-28 07:25 , Processed in 0.704985 second(s), 25 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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