diff options
Diffstat (limited to 'Data/BuiltIn/Libraries/addons/addons/send/send.lua')
-rw-r--r-- | Data/BuiltIn/Libraries/addons/addons/send/send.lua | 101 |
1 files changed, 0 insertions, 101 deletions
diff --git a/Data/BuiltIn/Libraries/addons/addons/send/send.lua b/Data/BuiltIn/Libraries/addons/addons/send/send.lua deleted file mode 100644 index 8df543b..0000000 --- a/Data/BuiltIn/Libraries/addons/addons/send/send.lua +++ /dev/null @@ -1,101 +0,0 @@ -_addon.version = '1.0' -_addon.name = 'Send' -_addon.command = 'send' -_addon.author = 'Byrth' - -windower.register_event('addon command',function (...) - local term = table.concat({...}, ' ') - - term = term:gsub('<(%a+)id>', function(target_string) - local entity = windower.ffxi.get_mob_by_target(target_string) - return entity and entity.id or '<' .. target_string .. 'id>' - end) - - local broken_init = split(term, ' ') - local qual = table.remove(broken_init,1) - local player = windower.ffxi.get_player() - - if qual:lower()==player['name']:lower() then - if broken_init ~= nil then - relevant_msg(table.concat(broken_init,' ')) - end - elseif qual:lower()=='@all' or qual:lower()=='@'..player.main_job:lower() then - if broken_init ~= nil then - relevant_msg(table.concat(broken_init,' ')) - end - windower.send_ipc_message('send ' .. term) - else - windower.send_ipc_message('send ' .. term) - end -end) - -windower.register_event('ipc message',function (msg) - local broken = split(msg, ' ') - - local command = table.remove(broken, 1) - if command ~= 'send' then - return - end - - if #broken < 2 then return end - - local qual = table.remove(broken,1) - local player = windower.ffxi.get_player() - if qual:lower()==player.name:lower() then - relevant_msg(table.concat(broken,' ')) - end - if string.char(qual:byte(1)) == '@' then - local arg = string.char(qual:byte(2, qual:len())) - if arg:upper() == player.main_job:upper() then - if broken ~= nil then - relevant_msg(table.concat(broken,' ')) - end - elseif arg:upper() == 'ALL' then - if broken ~= nil then - relevant_msg(table.concat(broken,' ')) - end - elseif arg:upper() == 'OTHERS' then - if broken ~= nil then - relevant_msg(table.concat(broken,' ')) - end - end - end -end) - -function split(msg, match) - if msg == nil then return '' end - local length = msg:len() - local splitarr = {} - local u = 1 - while u <= length do - local nextanch = msg:find(match,u) - if nextanch ~= nil then - splitarr[#splitarr+1] = msg:sub(u,nextanch-match:len()) - if nextanch~=length then - u = nextanch+match:len() - else - u = length - end - else - splitarr[#splitarr+1] = msg:sub(u,length) - u = length+1 - end - end - return splitarr -end - -function relevant_msg(msg) - local player = windower.ffxi.get_player() - - if msg:sub(1,2)=='//' then - windower.send_command(msg:sub(3)) - elseif msg:sub(1,1)=='/' then - windower.send_command('input '..msg) - elseif msg:sub(1,3)=='atc' then - windower.add_to_chat(55,msg:sub(5)) - else - windower.send_command(msg) - end - -end - |