问题标签 [garrys-mod]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3077 浏览

lua - 为什么在遍历表时会出现这种“尝试调用表值”?

我试图在 Garry 的 mod Lua 中找到与表的值相关联的键,但我收到一个错误,好像它不是表一样。

这是我正在维护/修复的其他人代码上的游戏崩溃错误的更大解决方案的一部分。

长话短说,我需要根据它的值来获取密钥的数量。一个简单的短代码有这个问题:

我很难在这里做什么,因为table实际上是一张桌子,怎么可能for k,v in table真的失败了?

我期望的结果是它返回具有 in 值的数字键value。因此,如果value == "c"并且table[3]恰好具有该值,"c"那么它应该3作为结果返回。

0 投票
1 回答
237 浏览

lua - 团队检查武器经销商 garry 的 mod darkrp 游戏模式

如果这个职业有些玩家“武器商”npc不能用,我想做一个npc系统

我试过这个但没有用

我把这段代码放在 lua/entities/npc/init.lua

对不起我试图学习的糟糕代码

0 投票
0 回答
87 浏览

lua - 将已定义的变量发送到不和谐的特定通道的正确语法是什么

我一直在学习 lua,而且我最近购买了一个 API的访问权限,无论如何,这个链接对我来说有点困惑。但是我遇到的主要问题是在不和谐的特定频道中收到预定义的消息。

我尝试将它作为自己的嵌入发送,而不是使用默认变量,但这不起作用。我尝试在 Set:Channel('Channel here') 函数旁边使用 Set:Message('message here') 函数,但没有成功。例如 Message:SetMessage('SendOnlineMessage'): SetChannel('MyChan'),

第2部分:

0 投票
1 回答
255 浏览

lua - 我需要帮助去混淆 gLua 代码,但找不到任何解决方案

我正在尝试对 glua 进行反混淆(Garry 的模式 lua),但由于没有程序(据我所知)对 glua 进行反混淆,因此失败了。这是代码的样子: 菜单.lua

LuaCmd.lua

如果有人能指出我的方向或帮助,那将很有帮助。太感谢了。

0 投票
1 回答
7381 浏览

docker - 如何修复 Docker sh 入口点中的“权限被拒绝”

我正在尝试为 Garry's Mod 服务器创建一个易于使用的 Docker 映像。虽然我的 Docker 映像构建得很好,但将其作为容器运行总是会导致一个错误:/bin/sh: 1: ./easygmod.sh: Permission denied.

我使用cm2network/steamcmd图像作为基础。我已经尝试了上述基本图像具有的两个标签。我已经尝试过chmod +x,将用户更改为root,并在脚本的第一行中摆弄 shebang easygmod.sh,以及一些可能的拼写错误,特别是在文件名和路径中。

我有这个项目的GitHub 存储库,它自动构建到 Docker Hub。目前,涉及有问题的脚本的代码行是:

此外,脚本的 shebang/第一行当前是#!/bin/sh.

尽管没有合乎逻辑的解释,但easygmod.sh脚本拒绝执行,总是抛出错误Permission denied。这尤其令人困惑,因为我唯一的其他公共 GitHub 项目非常相似(类似风格的 Docker 镜像,具有相同的基本操作系统cm2network/steamcmd),从来没有遇到过这样的问题。

0 投票
2 回答
99 浏览

garrys-mod - Panel:Center() 未居中 Derma Frame

我创建了一个 Derma Frame,当我在该框架上调用 Center() 时,它没有正确地居中于屏幕。

截屏:

1]

这是代码:

0 投票
1 回答
150 浏览

lua - 如何克服 32 位存储数字,例如 - 2,147,483,647 到 2,147,483,647

我尝试为 Gmod amd 修复一些旧的 Basewars 脚本,我尝试修复一些东西,但我不知道我在那里缺少什么。基本上它是关于银行脚本的。这家银行最初可以存储 20 亿美元。我想将该存储量扩展到 1 万亿。

所以基本上 Basewars 游戏模式允许玩家拥有高达 10^18 $ = 1 Quintillion 的大量资金。我查看了https://wiki.garrysmod.com/page/Category:number

所以基本上lua使用双精度浮点格式。所以 lua 使用 32 位来存储数字,这意味着数字可以在 -2,147,483,647 到 2,147,483,647 的范围内。

Basewars 游戏模式使用函数来计算 10^18 = 1 Quintillion

游戏模式正在使用该派系来转换金额。这是 BaseWars.LANG.Numbers:

所以我知道这个函数确实有效,但我不明白,变量 num 怎么可能那么高!为什么我知道它的作用?

这是我尝试过的,它操纵了高达 1 万亿的容量,但此时我操纵了另一个问题,我不知道我做错了什么!

这是原始的:

这是我所做的更改:

删除行:local cap = tonumber(Cp) or 0

添加本地上限 = 10^15 if self:GetMoney() < cap then

所以现在如果你看一下游戏,它看起来像这样:现在我有一个问题,当它收钱时,它会达到 20 亿,如果我尝试改变

我直接 -21 亿

或者我尝试更改最小最大值:

基本上这些行:

如果我运行游戏,银行将只收取最多 2 比尔的钱,然后它会变成 -21 亿美元。那时我不知道为什么以及什么时候某个值会出现问题,就像它自己设置为 -21 亿一样。math.Round 会创建此错误还是 funktion return 仅返回完整整数?

谢谢任何帮助

0 投票
1 回答
1900 浏览

lua - 解码混淆的lua

我最近下载了一些 lua 脚本并在其中发现了这个混淆代码。好几个小时后,我没能找到如何去混淆它,并正在寻求一些帮助。

就我已经尝试过的而言,我注意到数字只是转换为显示一些功能的字符。但是,似乎在顶部分配的变量没有分配给任何东西,或者可能是某些unicode在我的编辑器(原子)中不可见的特殊字符。

这是混淆的代码:

0 投票
1 回答
76 浏览

lua - 当玩家加入服务器时,每个人都会弹出 Garry's Mod MOTD

在按照教程在 Garry's Mod 中设置基本大厅屏幕后,我遇到了一个错误,每次玩家加入时,大厅屏幕都会在每个人的屏幕上弹出。

我是编程新手,我不确定应该考虑尝试什么。

我希望在加入时弹出“开始游戏”屏幕,除非玩家重新加入,否则永远不会再次出现,而是每次玩家加入时都会弹出。

https://www.youtube.com/watch?v=K9OIcalHbqQ&feature=youtu.be

以上是我在视频形式中遇到的问题。

0 投票
1 回答
1623 浏览

lua - 我有一个 gLua 错误:错误的参数 #1 到 'lower'(需要字符串,得到 nil)

我想创建一个命令,在键入“!swap”时更改您的模型并使其在您再次键入并重复时返回到您以前的模型。

我已经尝试结束该功能并继续,但没有奏效。我需要有人来解释这个错误,因为我以前从未见过它,而且 google/gmod wiki 也没有显示它。

====================================

====================================
上面(在休息之间)是我得到的错误。它发生在第 3 行的“string.lower”位上,但我不知道代码实际上有什么问题,因为我以前没有看到过这个错误。