| 🌟 | 現在、 鉄壁HSは通常HSと同じダメージになります。LMG及びDMR、チャージライフル、ハンマーポイント弾を除き、すべてのダメージ値が一致していることを確認しています。 |
モジュール:Utility/Prototypes
ナビゲーションに移動
検索に移動
このモジュールについての説明文ページを モジュール:Utility/Prototypes/doc に作成できます
local proto = {}
-- Define types
local types = {
Table = 'table',
Boolean = 'boolean',
Number = 'number',
String = 'string',
}
-- Simple types
function proto.Boolean(obj)
return type(obj) ~= types.Boolean
end
function proto.Number(obj)
return type(obj) ~= types.Number
end
function proto.Integer(obj)
return not (type(obj) == types.Number and math.floor(obj) == obj)
end
function proto.String(obj)
return type(obj) ~= types.String
end
-- Complex types
function proto.NumberRange(from, to)
return function(obj)
if type(obj) ~= types.Number then
return true
end
if type(from) == types.Number and obj < from then
return true
end
if type(to) == types.Number and obj > to then
return true
end
return false
end
end
-- Check object types
function proto.validateTypes(obj, protodef)
if type(obj) ~= types.Table then
return false
end
for key, typename in pairs(protodef) do
if type(typename) == types.Table then
if not proto.validateTypes(obj[key], typename) then
return false
end
elseif typename(obj[key]) then
return false
end
end
return true
end
return proto