Mercurial repo for silny-kombat project
Revision | 29c07ae25f970ca35edc7194e3584be5eb9f4509 (tree) |
---|---|
Time | 2021-10-08 03:53:39 |
Author | SecT |
Commiter | SecT |
Frame implementation. Blocking controls for characters
@@ -94,6 +94,8 @@ | ||
94 | 94 | |
95 | 95 | //let &mut mut stateReference: &mut i32; |
96 | 96 | |
97 | + let mut characterAInput : bool = false; | |
98 | + let mut characterBInput : bool = false; | |
97 | 99 | |
98 | 100 | loop { |
99 | 101 | while let Some(event) = window.poll_event() { |
@@ -111,19 +113,44 @@ | ||
111 | 113 | |
112 | 114 | let mut character:Character; |
113 | 115 | |
114 | - if key_result < KeyProcessor::KEY_BASE { | |
116 | + | |
117 | + | |
118 | + if key_result < KeyProcessor::KEY_BASE && !characterAInput{ | |
115 | 119 | //first char |
116 | 120 | process_key_result_for_character(&keyProcessor, &mut character_A, key_result); |
117 | 121 | |
118 | - } else { | |
122 | + characterAInput = true; | |
123 | + | |
124 | + if key_result == 3 { | |
125 | + counter = 0; | |
126 | + } | |
127 | + | |
128 | + if characterAInput && characterBInput{ | |
129 | + characterAInput = false; | |
130 | + characterBInput = false; | |
131 | + } | |
132 | + | |
133 | + } else if key_result >= KeyProcessor::KEY_BASE && !characterBInput { | |
119 | 134 | //second char |
120 | 135 | key_result = key_result - KeyProcessor::KEY_BASE; |
121 | 136 | process_key_result_for_character( &keyProcessor,&mut character_B, key_result); |
137 | + | |
138 | + characterBInput = true; | |
139 | + | |
140 | + if key_result == 3 { | |
141 | + counter = 0; | |
142 | + } | |
143 | + | |
144 | + if characterAInput && characterBInput{ | |
145 | + characterAInput = false; | |
146 | + characterBInput = false; | |
147 | + } | |
148 | + | |
122 | 149 | } |
123 | 150 | |
124 | - if key_result == 3 { | |
125 | - counter = 0; | |
126 | - } | |
151 | + // if key_result == 3 { | |
152 | + // counter = 0; | |
153 | + // } | |
127 | 154 | |
128 | 155 | // //first char///////////// |
129 | 156 | // if key_result == 3 { |