🌟現在、鉄壁 鉄壁ヘッドショットには対応済みです。
鉄壁HSは通常HSと同じダメージになります。LMG及びDMR、チャージライフル、ハンマーポイント弾を除き、すべてのダメージ値が一致していることを確認しています。

「モジュール:TableExtensions」の版間の差分

提供:Apex Data
ナビゲーションに移動 検索に移動
(関数table.filterのarray部の問題の修正)
(valueを第1引数にする関数table.mapValueの追加)
31行目: 31行目:
for key, value in pairs(tbl) do
for key, value in pairs(tbl) do
ret[key] = fn(key, value)
ret[key] = fn(key, value)
end
return ret
end
function table.mapValue(tbl, fn)
local ret = {}
for key, value in pairs(tbl) do
ret[key] = fn(value)
end
end
return ret
return ret

2021年8月20日 (金) 17:06時点における版

このモジュールについての説明文ページを モジュール:TableExtensions/doc に作成できます

function table.isEmpty(tbl)
	return not next(tbl)
end

function table.keys(tbl)
	local keyset = {}
	for key, _ in pairs(tbl) do
		keyset[#keyset + 1] = key
	end
	return keyset
end

function table.values(tbl)
	local valueset = {}
	for _, value in pairs(tbl) do
		valueset[#valueset + 1] = value
	end
	return valueset
end

function table.entries(tbl)
	local entryset = {}
	for key, value in pairs(tbl) do
		entryset[#entryset + 1] = { key, value }
	end
	return entryset
end

function table.map(tbl, fn)
	local ret = {}
	for key, value in pairs(tbl) do
		ret[key] = fn(key, value)
	end
	return ret
end

function table.mapValue(tbl, fn)
	local ret = {}
	for key, value in pairs(tbl) do
		ret[key] = fn(value)
	end
	return ret
end

function table.filter(tbl, fn)
	local ret = {}
	for idx, value in ipairs(tbl) do
		if fn(idx, value) then
			ret[#ret + 1] = value
		end
	end
	for key, value in pairs(tbl) do
		if type(key) ~= 'number' and fn(key, value) then
			ret[key] = value
		end
	end
	return ret
end

function table.removeKey(tbl, key)
	local element = tbl[key]
	tbl[key] = nil
	return element
end

return table