🌟 | 現在、 鉄壁ヘッドショットには対応済みです。 鉄壁HSは通常HSと同じダメージになります。LMG及びDMR、チャージライフル、ハンマーポイント弾を除き、すべてのダメージ値が一致していることを確認しています。 |
「モジュール:Utility/StringBuilder」の版間の差分
ナビゲーションに移動
検索に移動
(空チェック機能の実装) |
(関数 appendIf の追加) |
||
10行目: | 10行目: | ||
for i = 1, #arg do | for i = 1, #arg do | ||
table.insert(self.strings, arg[i]) | table.insert(self.strings, arg[i]) | ||
end | |||
return self | |||
end | |||
-- IF結合 | |||
function StringBuilder:appendIf(cond, ...) | |||
if cond then | |||
for i = 1, #arg do | |||
table.insert(self.strings, arg[i]) | |||
end | |||
end | end | ||
return self | return self |
2021年5月18日 (火) 13:11時点における最新版
このモジュールについての説明文ページを モジュール:Utility/StringBuilder/doc に作成できます
local StringBuilder = {} -- 空であるか function StringBuilder:isEmpty() return #self.strings == 0 end -- 結合 function StringBuilder:append(...) for i = 1, #arg do table.insert(self.strings, arg[i]) end return self end -- IF結合 function StringBuilder:appendIf(cond, ...) if cond then for i = 1, #arg do table.insert(self.strings, arg[i]) end end return self end -- フォーマット結合 function StringBuilder:appendFormat(...) local format = select(1, ...) table.insert(self.strings, string.format(format, select(2, ...))) return self end -- 文字列化 local function _StringBuilde__tostring(this) return table.concat(this.strings) end function StringBuilder:get() return tostring(self) end -- コンストラクター function StringBuilder.new() local obj = setmetatable({ strings = {} }, { __index = StringBuilder, __tostring = _StringBuilde__tostring, }) return obj end return StringBuilder