From 687e1fe2ffe3b3e09c345735c15289e60e021f70 Mon Sep 17 00:00:00 2001 From: JustinAJ Date: Sat, 25 Oct 2014 08:51:09 -0400 Subject: [PATCH] Fixed bug involving access overrides and aliases not being set; moved access override and alias loading to addCommand(). --- Release/Plugins/RenX.Core.lib | Bin 61562 -> 61562 bytes RenX.Core/RenX_Server.cpp | 34 +++++++++++++++------------------- 2 files changed, 15 insertions(+), 19 deletions(-) diff --git a/Release/Plugins/RenX.Core.lib b/Release/Plugins/RenX.Core.lib index 77b8a844c828b0b39921ad176d5480821056e20d..dbaa7063e7f956c004d4402cc4ca2aa12535dc83 100644 GIT binary patch delta 4215 zcmaJ^dr;L?5Wa|*_(DLqC^{Ep)Dbf;ln-nS4NMu-D?V}zNyu>=B1@Ywhf!0iu`$Ka z<)NZH6yK;IqA4N|Q&J2;MI6ZhoqU7{{+Uc;d(Qdo-gAlKKlbmozX6IMU z&M8BC1-}y%G-(oSI$|yiaha+8TNFKW4F6xyYWA@P`KiCyKC_&hO?jD-3*4McrryxD z(-)?u`WC%RsdAzKe!IQl&dz}@0#yS3sTSxBPxX)eQU^NY$0AGWD0V8(GehWePhp3| zv>60Pa(IyD=_+Ccm`o-o*qG)81JXwlK=>u!^Xw}CRs{4g^@QBP0kAJ^0OX_((qVP! z3KobkX9*hut{EeANN9`7ATDFJgV{)|C4&=_yfq3Py(@yyBH!bgD&G;v^9IE2G9!yS zSkk=+YTlM8JP^7Qijm!iutXY;|=Tg4A4CVE6R}Gi}pAqL&dAJn~h{7Ix;g% z=fWJNxx#K1u{YE!^TfT8gibjh*iRI9JZ9x)>S=5lWzrm)#byzt)Cf|RwUC17{DVv`CV1&G3SMP*;a3IyHQPpRg1ggDW6PON zW}T!ehe>n+wp^;7dB~*K@9+o)L@yPpR>dH7ux!;38|rhIZ>zzdbej1)POFrL6|JUd zWU8>61OZBx+MMXO)8c5;eG zpW}fM;No)%TzxK?auuOzI=24A(-B*tRE3=9vxMhg#w1m+cD|yC5S+XmYpyJ9nyC7BW zh|3XnlNnB3R>&)tS)Ztp z|0)aDrt#=io<@=W_$mdCtYYofS~KjsuFQ>92^5;Dl=urHjj@mu>3S`ikW{>kYh1k8 zM=Dj{>&ppc&`9lbQ2P?p9y@UwEUk2StLPk2)yyGUdA(Yl#-?g*_4>g28_K-n#<#>J z_7iSSc?*cm87o%Hj&GLet5XaX?RcjeE|R>qYdodv7o8vm;0w&_oXq&j{Zh?2C{DLSWHi%BF6X!0!{P`WjPZrkiA zAIQ3`mf!-^lYnLSH_w3TD-LDHV6rpw5%L*Ac6fh)5LQh6?7YMMG**Z7dJDZiN3U(; z{NZ9fA4>tDXNdbUs zwqSYy)ZF7_af+puw^7Si`1#}Tkua;l;arLgD|V?yjJofz(CF=4c%M0iOy5R@4r=5{ z*1K8O$lcVk zCUv`nVT4UsiLB)l^xFl8Om5>~{G0@#%>mHd#J@;{e?YTJETnlUB_=9IS3z}i*UHIo z<1pNJP}gjM95)x(*ut|XMA0s-Z{b~P2#`IShrXLJ)0cg`VAaEU#44)P^iYYJfspSd zWOCOB01bEYBOY$lC<6I{8mk_}N&SR80S3{M7DJr#(8Ym1|SbsxFTQt-LbC4B&4( zxs^v_zzngKbGQ4#>sFo@OEA(NOs&P!24!sy`%siG o|Ai7(@gj*l@!cb}u4#`TllZ}ZzkQH2zigkVo5MSlIl9C04@jTYEdT%j delta 4215 zcmaJ^dr;L?5Wa|*_(DLrC^{Ep)DcrJHlo-V8W@_7D?V}zNyu>=B1@YwhfzbSu`$Ka z<>8ZuqN1YW15FTln37@$D#Azx=;R|r@UJGB#`c`^+r8%!#eeMY+x_<2-LvQ1S53~Z znw*n|^au|RbLL#LD>bh=`GtLJ*bhCTgsPr-^Zr1#=I4#`mQYV2ks8Ht{? zH&o}s9HqI;ZWggO)++PFeX|Iid@-PpDDDKz%FWc>1QC5lLi9d|w6ZeI5S*=C-`*cV zu10SpQOSOXiek&8IV6M4B1o|jq$Fbz1=0Bjm|RTo(q$yP%Iw6i3i?Z?jobuxhoQ!n zHJ!{lNktZu=mKonEWkj^>6?i92SLmMFKEjS*29tT$OG&r3V;28QrLK43ZaEL_@FY| z4u+7~n&%DkPI{<*99&1{tV|^;E=LokOszRQaMnC!iaiuhj_qf>cOLeTO^d*!{Y29m zEur9c&fgItr%gbH;k5brhIK-~I}cS-OOAX_jw08`N0hnaNCKHR<*F=B; zJT8EsPJW^|Tu*GYBeBlsl=SrC_YzkubmS{}?x%mCAR^Jrr&X(>kb1mq)nFUybC_?d!Jl}B`PuGem__H6n7H%YLN#`B zibq}Gff3+>3kqC$A&GJop=mm{{>al2U8Yn8U*xld=U>JwzPNy#eRrE-OrculQ&3e1 zs!Hr(h4qCz;MJwdtEMoDy!4|VQ^ZGKUwhArc{|$ATfM<*b%7zpJUD_gvRJ8KQ@q&jYhSe;#muP}CH^uO1q%xvB_1-BdB`>c z5-v}L{*f+lF3*99wr52NtJ6c;N;xEz=kHQ350yTtj7v`gbP>#O90^t7XU6OZC+$28(vQQxz9UUfWfk(seYtek@!wCJlw_ReZjLl+i7! zVwPLlRnt^w0 zc9b_{+)+z#A?k_4viq6Cq4KIj*)f>x%mRdbijW;%?;(U0Q$IWIazBmLA-%?;*JtRp zZJZxms^w!TAoL7zzsJuIeGa$WBv_QbU03*?jcfjG4adH4s)moKLKxN{tVdm~e!A zCn1wNKLBXBlOFMKqedB6XxxHcYgP^gxA8rp|6`sPqXiOXL)iBc_HO6k`mPB7UE2V5 zf^F#8zH<2g1y7QYp->e#yek441(zp03Swc>Gw{%pjZ_l7dCBnLspUUp$sJ$!l*8$V zbKNsOoT3T1T_pPTGu}f&bkZNH@N=*>DVYAH*r{EmPJ47(3)d#UMO_{bT6krM8NlCo zax0I*fazi@XK(j`*DX9Jf|TyDThI9(qg!)T>sl%TzM5s*mSUtmm|C-^4N6)a_Ms?W o-U}tH>_sAZ;=4y`UE4O3OyURs{k8$p{IYGLZVqc#=E!!-KRbQN+W-In diff --git a/RenX.Core/RenX_Server.cpp b/RenX.Core/RenX_Server.cpp index b3ea9a9..291a753 100644 --- a/RenX.Core/RenX_Server.cpp +++ b/RenX.Core/RenX_Server.cpp @@ -440,6 +440,19 @@ unsigned int RenX::Server::triggerCommand(const Jupiter::ReadableString &trigger void RenX::Server::addCommand(RenX::GameCommand *command) { RenX::Server::commands.add(command); + if (RenX::Server::commandAccessLevels != nullptr) + { + const Jupiter::ReadableString &accessLevel = RenX::Server::commandAccessLevels->get(command->getTrigger()); + if (accessLevel.isEmpty() == false) + command->setAccessLevel(accessLevel.asInt()); + } + if (RenX::Server::commandAliases != nullptr) + { + const Jupiter::ReadableString &aliasList = RenX::Server::commandAliases->get(command->getTrigger()); + unsigned int j = aliasList.wordCount(WHITESPACE); + while (j != 0) + command->addTrigger(Jupiter::ReferenceString::getWord(aliasList, --j, WHITESPACE)); + } } bool RenX::Server::removeCommand(RenX::GameCommand *command) @@ -1128,25 +1141,8 @@ void RenX::Server::init() RenX::Server::commandAccessLevels = commandsFile.getSection(RenX::Server::configSection); RenX::Server::commandAliases = commandsFile.getSection(Jupiter::StringS::Format("%.*s.Aliases", RenX::Server::configSection.size(), RenX::Server::configSection.ptr())); - RenX::GameCommand *cmd; - for (size_t i = 0, j; i < RenX::GameMasterCommandList->size(); i++) - { - cmd = RenX::GameMasterCommandList->get(i)->copy(); - RenX::Server::addCommand(cmd); - if (commandAccessLevels != nullptr) - { - const Jupiter::ReadableString &accessLevel = RenX::Server::commandAccessLevels->get(cmd->getTrigger()); - if (accessLevel.isEmpty() == false) - cmd->setAccessLevel(accessLevel.asInt()); - } - if (commandAliases != nullptr) - { - const Jupiter::ReadableString &aliasList = RenX::Server::commandAliases->get(cmd->getTrigger()); - j = aliasList.wordCount(WHITESPACE); - while (j != 0) - cmd->addTrigger(Jupiter::ReferenceString::getWord(aliasList, --j, WHITESPACE)); - } - } + for (size_t i = 0; i < RenX::GameMasterCommandList->size(); i++) + RenX::Server::addCommand(RenX::GameMasterCommandList->get(i)->copy()); } RenX::Server::~Server()