gpt4 book ai didi

lua - 如何将此 PAWN 示例转换为 LUA?

转载 作者:行者123 更新时间:2023-12-04 17:49:58 26 4
gpt4 key购买 nike

我有一个新问题要问大家。
我想知道您是否能够在 Lua 中进行枚举(我不确定这是否是它的正确名称)。
我可以解释这一点的最好方法是,如果我向您展示一个使用 PAWN 的示例(如果您了解 C 类型语言,那将是有意义的)。

#define MAX_SPIDERS 1000

new spawnedSpiders;

enum _spiderData {
spiderX,
spiderY,
bool:spiderDead
}

new SpiderData[MAX_SPIDERS][_spiderData];

stock SpawnSpider(x, y)
{
spawnedSpiders++;
new thisId = spawnedSpiders;
SpiderData[thisId][spiderX] = x;
SpiderData[thisId][spiderY] = y;
SpiderData[thisId][spiderDead] = false;
return thisId;
}
所以这就是它在 PAWN 中的样子,但是我不知道如何在 Lua 中做到这一点......这是我到目前为止所得到的。
local spawnedSpiders = {x, y, dead}
local spawnCount = 0

function spider.spawn(tilex, tiley)
spawnCount = spawnCount + 1
local thisId = spawnCount
spawnedSpiders[thisId].x = tilex
spawnedSpiders[thisId].y = tiley
spawnedSpiders[thisId].dead = false
return thisId
end
但显然它给出了一个错误,你们中有人知道这样做的正确方法吗?谢谢!

最佳答案

我不知道 PAWN,但我认为这就是你的意思:

local spawnedSpiders = {}

function spawn(tilex, tiley)
local spiderData = {x = tilex, y = tiley, dead = false}
spawnedSpiders[#spawnedSpiders + 1] = spiderData
return #spawnedSpiders
end

给它一个测试:
spawn("first", "hello")
spawn("second", "world")

print(spawnedSpiders[1].x, spawnedSpiders[1].y)

输出: first hello

关于lua - 如何将此 PAWN 示例转换为 LUA?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18980971/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com