<div class="de1"><span class="kw1">class</span> <span class="sy0"><<</span> Input </div><div class="de1"> <span class="co1">#--------------------------------------------------------------------------</span></div><div class="de1"> <span class="co1"># Aliases (Mods - Linked to Module) - Created by OriginalWij</span></div><div class="de1"> <span class="co1">#--------------------------------------------------------------------------</span></div><div class="de1"> <span class="kw1">alias</span> ow_dt_i_press press? <span class="kw1">unless</span> $@</div><div class="de1"> <span class="kw1">alias</span> ow_dt_i_trigger trigger? <span class="kw1">unless</span> $@</div><div class="de1"> <span class="kw1">alias</span> ow_dt_i_repeat repeat? <span class="kw1">unless</span> $@</div><div class="de1"> <span class="kw1">alias</span> ow_dt_i_update update <span class="kw1">unless</span> $@</div><div class="de1"><span class="kw1">end</span></div><div class="de1"> </div><div class="de1"><span class="kw1">module</span> Input</div><div class="de1"> <span class="co1">#--------------------------------------------------------------------------</span></div><div class="de1"> <span class="co1"># constants - Created by OriginalWij and Yanfly</span></div><div class="de1"> <span class="co1">#--------------------------------------------------------------------------</span></div><div class="de1"> LETTERS = <span class="br0">{</span><span class="br0">}</span> </div><div class="de1"> LETTERS<span class="br0">[</span><span class="st0">'A'</span><span class="br0">]</span> = <span class="nu0">65</span>; LETTERS<span class="br0">[</span><span class="st0">'B'</span><span class="br0">]</span> = <span class="nu0">66</span>; LETTERS<span class="br0">[</span><span class="st0">'C'</span><span class="br0">]</span> = <span class="nu0">67</span>; LETTERS<span class="br0">[</span><span class="st0">'D'</span><span class="br0">]</span> = <span class="nu0">68</span></div><div class="de1"> LETTERS<span class="br0">[</span><span class="st0">'E'</span><span class="br0">]</span> = <span class="nu0">69</span>; LETTERS<span class="br0">[</span><span class="st0">'F'</span><span class="br0">]</span> = <span class="nu0">70</span>; LETTERS<span class="br0">[</span><span class="st0">'G'</span><span class="br0">]</span> = <span class="nu0">71</span>; LETTERS<span class="br0">[</span><span class="st0">'H'</span><span class="br0">]</span> = <span class="nu0">72</span></div><div class="de1"> LETTERS<span class="br0">[</span><span class="st0">'I'</span><span class="br0">]</span> = <span class="nu0">73</span>; LETTERS<span class="br0">[</span><span class="st0">'J'</span><span class="br0">]</span> = <span class="nu0">74</span>; LETTERS<span class="br0">[</span><span class="st0">'K'</span><span class="br0">]</span> = <span class="nu0">75</span>; LETTERS<span class="br0">[</span><span class="st0">'L'</span><span class="br0">]</span> = <span class="nu0">76</span></div><div class="de1"> LETTERS<span class="br0">[</span><span class="st0">'M'</span><span class="br0">]</span> = <span class="nu0">77</span>; LETTERS<span class="br0">[</span><span class="st0">'N'</span><span class="br0">]</span> = <span class="nu0">78</span>; LETTERS<span class="br0">[</span><span class="st0">'O'</span><span class="br0">]</span> = <span class="nu0">79</span>; LETTERS<span class="br0">[</span><span class="st0">'P'</span><span class="br0">]</span> = <span class="nu0">80</span></div><div class="de1"> LETTERS<span class="br0">[</span><span class="st0">'Q'</span><span class="br0">]</span> = <span class="nu0">81</span>; LETTERS<span class="br0">[</span><span class="st0">'R'</span><span class="br0">]</span> = <span class="nu0">82</span>; LETTERS<span class="br0">[</span><span class="st0">'S'</span><span class="br0">]</span> = <span class="nu0">83</span>; LETTERS<span class="br0">[</span><span class="st0">'T'</span><span class="br0">]</span> = <span class="nu0">84</span></div><div class="de1"> LETTERS<span class="br0">[</span><span class="st0">'U'</span><span class="br0">]</span> = <span class="nu0">85</span>; LETTERS<span class="br0">[</span><span class="st0">'V'</span><span class="br0">]</span> = <span class="nu0">86</span>; LETTERS<span class="br0">[</span><span class="st0">'W'</span><span class="br0">]</span> = <span class="nu0">87</span>; LETTERS<span class="br0">[</span><span class="st0">'X'</span><span class="br0">]</span> = <span class="nu0">88</span></div><div class="de1"> LETTERS<span class="br0">[</span><span class="st0">'Y'</span><span class="br0">]</span> = <span class="nu0">89</span>; LETTERS<span class="br0">[</span><span class="st0">'Z'</span><span class="br0">]</span> = <span class="nu0">90</span></div><div class="de1"> NUMBERS = <span class="br0">[</span><span class="nu0">48</span>, <span class="nu0">49</span>, <span class="nu0">50</span>, <span class="nu0">51</span>, <span class="nu0">52</span>, <span class="nu0">53</span>, <span class="nu0">54</span>, <span class="nu0">55</span>, <span class="nu0">56</span>, <span class="nu0">57</span><span class="br0">]</span></div><div class="de1"> NUMPAD = <span class="br0">[</span><span class="nu0">96</span>, <span class="nu0">97</span>, <span class="nu0">98</span>, <span class="nu0">99</span>, <span class="nu0">100</span>, <span class="nu0">101</span>, <span class="nu0">102</span>, <span class="nu0">103</span>, <span class="nu0">104</span>, <span class="nu0">105</span><span class="br0">]</span> </div><div class="de1"> BACK = <span class="nu0">138</span>; ENTER = <span class="nu0">143</span>; SPACE = <span class="nu0">32</span>; SCOLON = <span class="nu0">186</span>; ESC = <span class="nu0">157</span></div><div class="de1"> QUOTE = <span class="nu0">222</span>; EQUALS = <span class="nu0">187</span>; COMMA = <span class="nu0">188</span>; USCORE = <span class="nu0">189</span>; PERIOD = <span class="nu0">190</span></div><div class="de1"> SLASH = <span class="nu0">191</span>; LBRACE = <span class="nu0">219</span>; RBRACE = <span class="nu0">221</span>; BSLASH = <span class="nu0">220</span>; TILDE = <span class="nu0">192</span></div><div class="de1"> F10 = <span class="nu0">121</span>; F11 = <span class="nu0">122</span>; CAPS = <span class="nu0">20</span>; NMUL = <span class="nu0">106</span>; NPLUS = <span class="nu0">107</span></div><div class="de1"> NSEP = <span class="nu0">108</span>; NMINUS = <span class="nu0">109</span>; NDECI = <span class="nu0">110</span>; NDIV = <span class="nu0">111</span>; Extras = </div><div class="de1"> <span class="br0">[</span>USCORE, EQUALS, LBRACE, RBRACE, BSLASH, SCOLON, QUOTE, COMMA, PERIOD, SLASH,</div><div class="de1"> NMUL, NPLUS, NSEP, NMINUS, NDECI, NDIV<span class="br0">]</span></div><div class="de1"> </div><div class="de1"> <span class="co1">#--------------------------------------------------------------------------</span></div><div class="de1"> <span class="co1"># initial module settings - Created by OriginalWij and Yanfly</span></div><div class="de1"> <span class="co1">#--------------------------------------------------------------------------</span></div><div class="de1"> GetKeyState = Win32API.<span class="me1">new</span><span class="br0">(</span><span class="st0">"user32"</span>, <span class="st0">"GetAsyncKeyState"</span>, <span class="st0">"i"</span>, <span class="st0">"i"</span><span class="br0">)</span> </div><div class="de1"> GetCapState = Win32API.<span class="me1">new</span><span class="br0">(</span><span class="st0">"user32"</span>, <span class="st0">"GetKeyState"</span>, <span class="st0">"i"</span>, <span class="st0">"i"</span><span class="br0">)</span> </div><div class="de1"> KeyRepeatCounter = <span class="br0">{</span><span class="br0">}</span></div><div class="de1"> module_function </div><div class="de1"> <span class="co1">#--------------------------------------------------------------------------</span></div><div class="de1"> <span class="co1"># alias method: update - Created by OriginalWij</span></div><div class="de1"> <span class="co1">#--------------------------------------------------------------------------</span></div><div class="de1"> <span class="kw1">def</span> update</div><div class="de1"> ow_dt_i_update</div><div class="de1"> <span class="kw1">for</span> key <span class="kw1">in</span> KeyRepeatCounter.<span class="me1">keys</span></div><div class="de1"> <span class="kw1">if</span> <span class="br0">(</span>GetKeyState.<span class="me1">call</span><span class="br0">(</span>key<span class="br0">)</span>.<span class="me1">abs</span> <span class="sy0">&</span> 0x8000 == 0x8000<span class="br0">)</span></div><div class="de1"> KeyRepeatCounter<span class="br0">[</span>key<span class="br0">]</span> <span class="sy0">+</span>= <span class="nu0">1</span></div><div class="de1"> <span class="kw1">else</span></div><div class="de1"> KeyRepeatCounter.<span class="me1">delete</span><span class="br0">(</span>key<span class="br0">)</span></div><div class="de1"> <span class="kw1">end</span></div><div class="de1"> <span class="kw1">end</span></div><div class="de1"> <span class="kw1">end</span></div><div class="de1"> </div><div class="de1"> <span class="co1">#--------------------------------------------------------------------------</span></div><div class="de1"> <span class="co1"># alias method: press? - Created by OriginalWij</span></div><div class="de1"> <span class="co1">#--------------------------------------------------------------------------</span></div><div class="de1"> <span class="kw1">def</span> press?<span class="br0">(</span>key<span class="br0">)</span></div><div class="de1"> <span class="kw2">return</span> ow_dt_i_press<span class="br0">(</span>key<span class="br0">)</span> <span class="kw1">if</span> key <span class="sy0"><</span> <span class="nu0">30</span></div><div class="de1"> adjusted_key = adjust_key<span class="br0">(</span>key<span class="br0">)</span></div><div class="de1"> <span class="kw2">return</span> <span class="kw2">true</span> <span class="kw1">unless</span> KeyRepeatCounter<span class="br0">[</span>adjusted_key<span class="br0">]</span>.<span class="kw2">nil</span>?</div><div class="de1"> <span class="kw2">return</span> key_pressed?<span class="br0">(</span>adjusted_key<span class="br0">)</span></div><div class="de1"> <span class="kw1">end</span></div><div class="de1"> </div><div class="de1"> <span class="co1">#--------------------------------------------------------------------------</span></div><div class="de1"> <span class="co1"># alias method: trigger? - Created by OriginalWij</span></div><div class="de1"> <span class="co1">#--------------------------------------------------------------------------</span></div><div class="de1"> <span class="kw1">def</span> trigger?<span class="br0">(</span>key<span class="br0">)</span></div><div class="de1"> <span class="kw2">return</span> ow_dt_i_trigger<span class="br0">(</span>key<span class="br0">)</span> <span class="kw1">if</span> key <span class="sy0"><</span> <span class="nu0">30</span></div><div class="de1"> adjusted_key = adjust_key<span class="br0">(</span>key<span class="br0">)</span></div><div class="de1"> count = KeyRepeatCounter<span class="br0">[</span>adjusted_key<span class="br0">]</span></div><div class="de1"> <span class="kw2">return</span> <span class="br0">(</span><span class="br0">(</span>count == <span class="nu0">0</span><span class="br0">)</span> <span class="kw1">or</span> <span class="br0">(</span>count.<span class="kw2">nil</span>? ? key_pressed?<span class="br0">(</span>adjusted_key<span class="br0">)</span> : <span class="kw2">false</span><span class="br0">)</span><span class="br0">)</span></div><div class="de1"> <span class="kw1">end</span></div><div class="de1"> </div><div class="de1"> <span class="co1">#--------------------------------------------------------------------------</span></div><div class="de1"> <span class="co1"># alias method: repeat? - Created by OriginalWij</span></div><div class="de1"> <span class="co1">#--------------------------------------------------------------------------</span></div><div class="de1"> <span class="kw1">def</span> repeat?<span class="br0">(</span>key<span class="br0">)</span></div><div class="de1"> <span class="kw2">return</span> ow_dt_i_repeat<span class="br0">(</span>key<span class="br0">)</span> <span class="kw1">if</span> key <span class="sy0"><</span> <span class="nu0">30</span></div><div class="de1"> adjusted_key = adjust_key<span class="br0">(</span>key<span class="br0">)</span></div><div class="de1"> count = KeyRepeatCounter<span class="br0">[</span>adjusted_key<span class="br0">]</span></div><div class="de1"> <span class="kw2">return</span> <span class="kw2">true</span> <span class="kw1">if</span> count == <span class="nu0">0</span></div><div class="de1"> <span class="kw1">if</span> count.<span class="kw2">nil</span>?</div><div class="de1"> <span class="kw2">return</span> key_pressed?<span class="br0">(</span>adjusted_key<span class="br0">)</span></div><div class="de1"> <span class="kw1">else</span></div><div class="de1"> <span class="kw2">return</span> <span class="br0">(</span>count <span class="sy0">></span>= <span class="nu0">23</span> <span class="kw1">and</span> <span class="br0">(</span>count <span class="sy0">-</span> <span class="nu0">23</span><span class="br0">)</span> <span class="sy0">%</span> <span class="nu0">6</span> == <span class="nu0">0</span><span class="br0">)</span></div><div class="de1"> <span class="kw1">end</span></div><div class="de1"> <span class="kw1">end</span></div><div class="de1"> </div><div class="de1"> <span class="co1">#--------------------------------------------------------------------------</span></div><div class="de1"> <span class="co1"># new method: adjust_key - Created by OriginalWij</span></div><div class="de1"> <span class="co1">#--------------------------------------------------------------------------</span></div><div class="de1"> <span class="kw1">def</span> adjust_key<span class="br0">(</span>key<span class="br0">)</span></div><div class="de1"> key <span class="sy0">-</span>= <span class="nu0">130</span> <span class="kw1">if</span> key.<span class="me1">between</span>?<span class="br0">(</span><span class="nu0">130</span>, <span class="nu0">158</span><span class="br0">)</span></div><div class="de1"> <span class="kw2">return</span> key</div><div class="de1"> <span class="kw1">end</span></div><div class="de1"> </div><div class="de1"> <span class="co1">#--------------------------------------------------------------------------</span></div><div class="de1"> <span class="co1"># new method: key_pressed? - Created by OriginalWij</span></div><div class="de1"> <span class="co1">#--------------------------------------------------------------------------</span></div><div class="de1"> <span class="kw1">def</span> key_pressed?<span class="br0">(</span>key<span class="br0">)</span></div><div class="de1"> <span class="kw1">if</span> <span class="br0">(</span>GetKeyState.<span class="me1">call</span><span class="br0">(</span>key<span class="br0">)</span>.<span class="me1">abs</span> <span class="sy0">&</span> 0x8000 == 0x8000<span class="br0">)</span></div><div class="de1"> KeyRepeatCounter<span class="br0">[</span>key<span class="br0">]</span> = <span class="nu0">0</span></div><div class="de1"> <span class="kw2">return</span> <span class="kw2">true</span></div><div class="de1"> <span class="kw1">end</span></div><div class="de1"> <span class="kw2">return</span> <span class="kw2">false</span></div><div class="de1"> <span class="kw1">end</span></div><div class="de1"> </div><div class="de1"> <span class="co1">#--------------------------------------------------------------------------</span></div><div class="de1"> <span class="co1"># new method: typing? - Created by Yanfly</span></div><div class="de1"> <span class="co1">#--------------------------------------------------------------------------</span></div><div class="de1"> <span class="kw1">def</span> typing?</div><div class="de1"> <span class="kw2">return</span> <span class="kw2">true</span> <span class="kw1">if</span> repeat?<span class="br0">(</span>SPACE<span class="br0">)</span></div><div class="de1"> <span class="kw1">for</span> i <span class="kw1">in</span> <span class="st0">'A'</span>..<span class="st0">'Z'</span></div><div class="de1"> <span class="kw2">return</span> <span class="kw2">true</span> <span class="kw1">if</span> repeat?<span class="br0">(</span>LETTERS<span class="br0">[</span>i<span class="br0">]</span><span class="br0">)</span></div><div class="de1"> <span class="kw1">end</span></div><div class="de1"> <span class="kw1">for</span> i <span class="kw1">in</span> 0...<span class="me1">NUMBERS</span>.<span class="me1">size</span></div><div class="de1"> <span class="kw2">return</span> <span class="kw2">true</span> <span class="kw1">if</span> repeat?<span class="br0">(</span>NUMBERS<span class="br0">[</span>i<span class="br0">]</span><span class="br0">)</span></div><div class="de1"> <span class="kw2">return</span> <span class="kw2">true</span> <span class="kw1">if</span> repeat?<span class="br0">(</span>NUMPAD<span class="br0">[</span>i<span class="br0">]</span><span class="br0">)</span></div><div class="de1"> <span class="kw1">end</span></div><div class="de1"> <span class="kw1">for</span> key <span class="kw1">in</span> Extras</div><div class="de1"> <span class="kw2">return</span> <span class="kw2">true</span> <span class="kw1">if</span> repeat?<span class="br0">(</span>key<span class="br0">)</span></div><div class="de1"> <span class="kw1">end</span></div><div class="de1"> <span class="kw2">return</span> <span class="kw2">false</span></div><div class="de1"> <span class="kw1">end</span></div><div class="de1"> </div><div class="de1"> <span class="co1">#--------------------------------------------------------------------------</span></div><div class="de1"> <span class="co1"># new method: key_type - Created by Yanfly</span></div><div class="de1"> <span class="co1">#--------------------------------------------------------------------------</span></div><div class="de1"> <span class="kw1">def</span> key_type</div><div class="de1"> <span class="kw2">return</span> <span class="st0">" "</span> <span class="kw1">if</span> repeat?<span class="br0">(</span>SPACE<span class="br0">)</span></div><div class="de1"> <span class="kw1">for</span> i <span class="kw1">in</span> <span class="st0">'A'</span>..<span class="st0">'Z'</span></div><div class="de1"> <span class="kw1">next</span> <span class="kw1">unless</span> repeat?<span class="br0">(</span>LETTERS<span class="br0">[</span>i<span class="br0">]</span><span class="br0">)</span></div><div class="de1"> <span class="kw2">return</span> upcase? ? i.<span class="me1">upcase</span> : i.<span class="me1">downcase</span></div><div class="de1"> <span class="kw1">end</span></div><div class="de1"> <span class="kw1">for</span> i <span class="kw1">in</span> 0...<span class="me1">NUMBERS</span>.<span class="me1">size</span></div><div class="de1"> <span class="kw2">return</span> i.<span class="me1">to_s</span> <span class="kw1">if</span> repeat?<span class="br0">(</span>NUMPAD<span class="br0">[</span>i<span class="br0">]</span><span class="br0">)</span></div><div class="de1"> <span class="kw1">if</span> !press?<span class="br0">(</span>SHIFT<span class="br0">)</span></div><div class="de1"> <span class="kw2">return</span> i.<span class="me1">to_s</span> <span class="kw1">if</span> repeat?<span class="br0">(</span>NUMBERS<span class="br0">[</span>i<span class="br0">]</span><span class="br0">)</span></div><div class="de1"> <span class="kw1">elsif</span> repeat?<span class="br0">(</span>NUMBERS<span class="br0">[</span>i<span class="br0">]</span><span class="br0">)</span></div><div class="de1"> <span class="kw1">case</span> i</div><div class="de1"> <span class="kw1">when</span> <span class="nu0">1</span>; <span class="kw2">return</span> <span class="st0">"!"</span></div><div class="de1"> <span class="kw1">when</span> <span class="nu0">2</span>; <span class="kw2">return</span> <span class="st0">"@"</span></div><div class="de1"> <span class="kw1">when</span> <span class="nu0">3</span>; <span class="kw2">return</span> <span class="st0">"#"</span></div><div class="de1"> <span class="kw1">when</span> <span class="nu0">4</span>; <span class="kw2">return</span> <span class="st0">"$"</span></div><div class="de1"> <span class="kw1">when</span> <span class="nu0">5</span>; <span class="kw2">return</span> <span class="st0">"%"</span></div><div class="de1"> <span class="kw1">when</span> <span class="nu0">6</span>; <span class="kw2">return</span> <span class="st0">"^"</span></div><div class="de1"> <span class="kw1">when</span> <span class="nu0">7</span>; <span class="kw2">return</span> <span class="st0">"&"</span></div><div class="de1"> <span class="kw1">when</span> <span class="nu0">8</span>; <span class="kw2">return</span> <span class="st0">"*"</span></div><div class="de1"> <span class="kw1">when</span> <span class="nu0">9</span>; <span class="kw2">return</span> <span class="st0">"("</span></div><div class="de1"> <span class="kw1">when</span> <span class="nu0">0</span>; <span class="kw2">return</span> <span class="st0">")"</span></div><div class="de1"> <span class="kw1">end</span></div><div class="de1"> <span class="kw1">end</span></div><div class="de1"> <span class="kw1">end</span></div><div class="de1"> <span class="kw1">for</span> key <span class="kw1">in</span> Extras</div><div class="de1"> <span class="kw1">next</span> <span class="kw1">unless</span> repeat?<span class="br0">(</span>key<span class="br0">)</span></div><div class="de1"> <span class="kw1">case</span> key</div><div class="de1"> <span class="kw1">when</span> USCORE; <span class="kw2">return</span> press?<span class="br0">(</span>SHIFT<span class="br0">)</span> ? <span class="st0">"_"</span> : <span class="st0">"-"</span></div><div class="de1"> <span class="kw1">when</span> EQUALS; <span class="kw2">return</span> press?<span class="br0">(</span>SHIFT<span class="br0">)</span> ? <span class="st0">"+"</span> : <span class="st0">"="</span></div><div class="de1"> <span class="kw1">when</span> LBRACE; <span class="kw2">return</span> press?<span class="br0">(</span>SHIFT<span class="br0">)</span> ? <span class="st0">"{"</span> : <span class="st0">"["</span></div><div class="de1"> <span class="kw1">when</span> RBRACE; <span class="kw2">return</span> press?<span class="br0">(</span>SHIFT<span class="br0">)</span> ? <span class="st0">"}"</span> : <span class="st0">"]"</span></div><div class="de1"> <span class="kw1">when</span> BSLASH; <span class="kw2">return</span> press?<span class="br0">(</span>SHIFT<span class="br0">)</span> ? <span class="st0">"|"</span> : <span class="st0">"<span class="es0"></span>"</span></div><div class="de1"> <span class="kw1">when</span> SCOLON; <span class="kw2">return</span> press?<span class="br0">(</span>SHIFT<span class="br0">)</span> ? <span class="st0">":"</span> : <span class="st0">";"</span></div><div class="de1"> <span class="kw1">when</span> QUOTE; <span class="kw2">return</span> press?<span class="br0">(</span>SHIFT<span class="br0">)</span> ? <span class="st0">'"'</span> : <span class="st0">"'"</span></div><div class="de1"> <span class="kw1">when</span> COMMA; <span class="kw2">return</span> press?<span class="br0">(</span>SHIFT<span class="br0">)</span> ? <span class="st0">"<"</span> : <span class="st0">","</span></div><div class="de1"> <span class="kw1">when</span> PERIOD; <span class="kw2">return</span> press?<span class="br0">(</span>SHIFT<span class="br0">)</span> ? <span class="st0">">"</span> : <span class="st0">"."</span></div><div class="de1"> <span class="kw1">when</span> SLASH; <span class="kw2">return</span> press?<span class="br0">(</span>SHIFT<span class="br0">)</span> ? <span class="st0">"?"</span> : <span class="st0">"/"</span></div><div class="de1"> <span class="kw1">when</span> NMUL; <span class="kw2">return</span> <span class="st0">"*"</span></div><div class="de1"> <span class="kw1">when</span> NPLUS; <span class="kw2">return</span> <span class="st0">"+"</span></div><div class="de1"> <span class="kw1">when</span> NSEP; <span class="kw2">return</span> <span class="st0">","</span></div><div class="de1"> <span class="kw1">when</span> NMINUS; <span class="kw2">return</span> <span class="st0">"-"</span></div><div class="de1"> <span class="kw1">when</span> NDECI; <span class="kw2">return</span> <span class="st0">"."</span></div><div class="de1"> <span class="kw1">when</span> NDIV; <span class="kw2">return</span> <span class="st0">"/"</span></div><div class="de1"> <span class="kw1">end</span></div><div class="de1"> <span class="kw1">end</span></div><div class="de1"> <span class="kw2">return</span> <span class="st0">""</span></div><div class="de1"> <span class="kw1">end</span></div><div class="de1"> </div><div class="de1"> <span class="co1">#--------------------------------------------------------------------------</span></div><div class="de1"> <span class="co1"># new method: upcase? - Created by Yanfly</span></div><div class="de1"> <span class="co1">#--------------------------------------------------------------------------</span></div><div class="de1"> <span class="kw1">def</span> upcase?</div><div class="de1"> <span class="kw2">return</span> !press?<span class="br0">(</span>SHIFT<span class="br0">)</span> <span class="kw1">if</span> GetCapState.<span class="me1">call</span><span class="br0">(</span>CAPS<span class="br0">)</span> == <span class="nu0">1</span></div><div class="de1"> <span class="kw2">return</span> <span class="kw2">true</span> <span class="kw1">if</span> press?<span class="br0">(</span>SHIFT<span class="br0">)</span></div><div class="de1"> <span class="kw2">return</span> <span class="kw2">false</span></div><div class="de1"> <span class="kw1">end</span></div><div class="de1"> </div><div class="de1"><span class="kw1">end</span></div></div></td></tr></table>