• R/O
  • SSH

silny-kombat: 提交

Mercurial repo for silny-kombat project


Commit MetaInfo

修订版809e1cf0fc4f8e7af42e9937e2315b5ca2c9bca4 (tree)
时间2021-04-14 02:25:45
作者SecT
CommiterSecT

Log Message

Refactoring, renaming

更改概述

差异

diff -r 899447edf3b6 -r 809e1cf0fc4f src/keyProcessing.rs
--- a/src/keyProcessing.rs Tue Mar 23 20:39:39 2021 +0100
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,45 +0,0 @@
1-use sfml::{
2- graphics::{
3- Sprite
4- },
5- window::{ Event, Key},
6-
7-};
8-
9-use crate::spriteRendering;
10-
11-pub fn process_key(mut sprite: &mut Sprite, key_result: i32, mut state: &mut i32) {
12- if key_result == 1
13- {
14- *state = 1;
15-
16- spriteRendering::move_right(&mut sprite);
17- } else if key_result == 2
18- {
19- *state = 2;
20- spriteRendering::move_left(&mut sprite);
21- }
22-}
23-
24-pub fn match_key(event: Event) -> i32 {
25- match event {
26- Event::Closed
27- | Event::KeyPressed {
28- code: Key::ESCAPE, ..
29- } => return 0,
30- Event::KeyPressed {
31- code: Key::RIGHT, ..
32- } => return 1,
33- Event::KeyPressed {
34- code: Key::LEFT, ..
35- } => return 2,
36- Event::KeyReleased {
37- code:Key::RIGHT, ..
38- } => return 3,
39- Event::KeyReleased {
40- code:Key::LEFT, ..
41- } => return 3,
42- _ => {}
43- }
44- return -1;
45-}
diff -r 899447edf3b6 -r 809e1cf0fc4f src/key_processing.rs
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/src/key_processing.rs Tue Apr 13 19:25:45 2021 +0200
@@ -0,0 +1,54 @@
1+use sfml::{
2+ graphics::{
3+ Sprite
4+ },
5+ window::{ Event, Key},
6+
7+};
8+
9+use crate::sprite_rendering;
10+
11+pub fn process_key(mut sprite: &mut Sprite, key_result: i32, state: &mut i32) {
12+ if key_result == 1
13+ {
14+ *state = 1;
15+
16+ sprite_rendering::move_right(&mut sprite);
17+ } else if key_result == 2
18+ {
19+ *state = 2;
20+ sprite_rendering::move_left(&mut sprite);
21+ }
22+ else if key_result == 4
23+ {
24+ *state = 2;
25+ sprite_rendering::move_left(&mut sprite);
26+ }
27+}
28+
29+pub fn match_key(event: Event) -> i32 {
30+ match event {
31+ Event::Closed
32+ | Event::KeyPressed {
33+ code: Key::ESCAPE, ..
34+ } => return 0,
35+ Event::KeyPressed {
36+ code: Key::RIGHT, ..
37+ } => return 1,
38+ Event::KeyPressed {
39+ code: Key::LEFT, ..
40+ } => return 2,
41+ Event::KeyReleased {
42+ code:Key::RIGHT, ..
43+ } => return 3,
44+ Event::KeyReleased {
45+ code:Key::LEFT, ..
46+ } => return 3,
47+
48+ Event::KeyPressed {
49+ code: Key::A, .. //move left for second character
50+ } => return 4,
51+ _ => {}
52+ }
53+ return -1;
54+}
diff -r 899447edf3b6 -r 809e1cf0fc4f src/main.rs
--- a/src/main.rs Tue Mar 23 20:39:39 2021 +0100
+++ b/src/main.rs Tue Apr 13 19:25:45 2021 +0200
@@ -2,14 +2,14 @@
22 graphics::{
33 Color, RenderTarget, RenderWindow, Transformable, Sprite,Texture
44 },
5- window::{ ContextSettings, Event, Style, Key},
5+ window::{ ContextSettings, Style},
66 system::Vector2f,
77 SfBox
88 };
99
10-mod stateMachine;
11-mod spriteRendering;
12-mod keyProcessing;
10+mod state_machine;
11+mod sprite_rendering;
12+mod key_processing;
1313
1414 fn main() {
1515 println!("Hello, world!");
@@ -20,28 +20,28 @@
2020 //Player A
2121 let fighter = Texture::from_file("sprites//sub_zero//01.gif").unwrap();
2222 let fighter2 = Texture::from_file("sprites//sub_zero//02.gif").unwrap();
23- let fighterWalk0 = Texture::from_file("sprites//sub_zero//a01.gif").unwrap();
24- let fighterWalk1 = Texture::from_file("sprites//sub_zero//a03.gif").unwrap();
23+ let fighter_walk0 = Texture::from_file("sprites//sub_zero//a01.gif").unwrap();
24+ let fighter_walk1 = Texture::from_file("sprites//sub_zero//a03.gif").unwrap();
2525
2626 //Player B
27- let fighterB = Texture::from_file("sprites//sub_zero//01.gif").unwrap();
28- let fighterB2 = Texture::from_file("sprites//sub_zero//02.gif").unwrap();
29- let fighterBWalk0 = Texture::from_file("sprites//sub_zero//a01.gif").unwrap();
30- let fighterBWalk1 = Texture::from_file("sprites//sub_zero//a03.gif").unwrap();
27+ // let fighter_b = Texture::from_file("sprites//sub_zero//01.gif").unwrap();
28+ // let fighter_b2 = Texture::from_file("sprites//sub_zero//02.gif").unwrap();
29+ // let fighter_b_walk0 = Texture::from_file("sprites//sub_zero//a01.gif").unwrap();
30+ // let fighter_b_walk1 = Texture::from_file("sprites//sub_zero//a03.gif").unwrap();
3131
3232
33- let textures: [&SfBox<Texture>; 4] = [&fighter, &fighter2, &fighterWalk0, &fighterWalk1];
34- let texturesB: [&SfBox<Texture>; 4] = [&fighterB, &fighterB2, &fighterBWalk0, &fighterBWalk1];
33+ let textures: [&SfBox<Texture>; 4] = [&fighter, &fighter2, &fighter_walk0, &fighter_walk1];
34+// let textures_b: [&SfBox<Texture>; 4] = [&fighter_b, &fighter_b2, &fighter_b_walk0, &fighter_b_walk1];
3535
3636
3737 let mut sprite = Sprite::new();
3838 let mut state = 0;
3939
40- let mut spriteB = Sprite::new();
41- let mut stateB = 0;
40+ let mut sprite_b = Sprite::new();
41+ let mut state_b = 0;
4242
43- spriteB.set_position(Vector2f::new(600.0, 0.0));
44- spriteB.set_scale(Vector2f::new(-1.0,1.0));
43+ sprite_b.set_position(Vector2f::new(600.0, 0.0));
44+ sprite_b.set_scale(Vector2f::new(-1.0, 1.0));
4545
4646 //sprite.set_texture(&fighter, true);
4747
@@ -49,7 +49,7 @@
4949
5050 loop {
5151 while let Some(event) = window.poll_event() {
52- let key_result = keyProcessing::match_key(event);
52+ let key_result = key_processing::match_key(event);
5353 if key_result == 0{
5454 //close program
5555 return;
@@ -58,8 +58,12 @@
5858 state = 0;
5959 counter = 0;
6060 }
61- keyProcessing::process_key(&mut sprite, key_result, &mut state);
62-
61+ if key_result == 1 || key_result == 2 || key_result == 3 {
62+ key_processing::process_key(&mut sprite, key_result, &mut state);
63+ }
64+ else if key_result == 4 {
65+ key_processing::process_key(&mut sprite_b, key_result, &mut state_b);
66+ }
6367 }
6468
6569
@@ -72,12 +76,12 @@
7276 }
7377
7478
75- spriteRendering::show_sprite2(&textures, &mut sprite, state, counter);
76- spriteRendering::show_sprite2(&textures, &mut spriteB, stateB, counter);
79+ sprite_rendering::show_sprite2(&textures, &mut sprite, state, counter);
80+ sprite_rendering::show_sprite2(&textures, &mut sprite_b, state_b, counter);
7781
7882 window.clear(Color::rgb(50, 200, 50));
7983 window.draw(&sprite);
80- window.draw(&spriteB);
84+ window.draw(&sprite_b);
8185 window.display();
8286
8387 }
@@ -98,6 +102,7 @@
98102 Style::CLOSE,
99103 &context_settings,
100104 );
105+ //window.set_key_repeat_enabled(false);
101106 window.set_vertical_sync_enabled(true);
102107 window.set_framerate_limit(80);
103108 window
diff -r 899447edf3b6 -r 809e1cf0fc4f src/spriteRendering.rs
--- a/src/spriteRendering.rs Tue Mar 23 20:39:39 2021 +0100
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,54 +0,0 @@
1-
2- use sfml::{
3- graphics::{
4- Transformable, Sprite, Texture
5- },
6- system::Vector2f,
7- SfBox
8- };
9-
10-
11- pub fn show_sprite2<'a>(textures: &'a [&SfBox<Texture>], mut sprite: &mut Sprite<'a>, state: i32, counter: i32) {
12- if state == 0
13- {
14- if counter % 10 == 0
15- {
16- sprite.set_texture(&textures[1], true);
17- }
18- if counter % 20 == 0
19- {
20- sprite.set_texture(&textures[0], true);
21- }
22- } else if state == 1
23- {
24- if counter % 10 == 0
25- {
26- sprite.set_texture(&textures[2], true);
27- }
28- if counter % 20 == 0
29- {
30- sprite.set_texture(&textures[3], true);
31- }
32- } else if state == 2
33- {
34- if counter % 10 == 0
35- {
36- sprite.set_texture(&textures[3], true);
37- }
38- if counter % 20 == 0
39- {
40- sprite.set_texture(&textures[2], true);
41- }
42- }
43- }
44-
45-
46- pub fn move_left(sprite: &mut Sprite) {
47- let v = Vector2f::new(-1.0, 0.0);
48- sprite.move_(v);
49- }
50-
51- pub fn move_right(sprite: &mut Sprite) {
52- let v = Vector2f::new(1.0, 0.0);
53- sprite.move_(v);
54- }
diff -r 899447edf3b6 -r 809e1cf0fc4f src/sprite_rendering.rs
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/src/sprite_rendering.rs Tue Apr 13 19:25:45 2021 +0200
@@ -0,0 +1,54 @@
1+
2+ use sfml::{
3+ graphics::{
4+ Transformable, Sprite, Texture
5+ },
6+ system::Vector2f,
7+ SfBox
8+ };
9+
10+
11+ pub fn show_sprite2<'a>(textures: &'a [&SfBox<Texture>], sprite: &mut Sprite<'a>, state: i32, counter: i32) {
12+ if state == 0
13+ {
14+ if counter % 10 == 0
15+ {
16+ sprite.set_texture(&textures[1], true);
17+ }
18+ if counter % 20 == 0
19+ {
20+ sprite.set_texture(&textures[0], true);
21+ }
22+ } else if state == 1
23+ {
24+ if counter % 10 == 0
25+ {
26+ sprite.set_texture(&textures[2], true);
27+ }
28+ if counter % 20 == 0
29+ {
30+ sprite.set_texture(&textures[3], true);
31+ }
32+ } else if state == 2
33+ {
34+ if counter % 10 == 0
35+ {
36+ sprite.set_texture(&textures[3], true);
37+ }
38+ if counter % 20 == 0
39+ {
40+ sprite.set_texture(&textures[2], true);
41+ }
42+ }
43+ }
44+
45+
46+ pub fn move_left(sprite: &mut Sprite) {
47+ let v = Vector2f::new(-1.0, 0.0);
48+ sprite.move_(v);
49+ }
50+
51+ pub fn move_right(sprite: &mut Sprite) {
52+ let v = Vector2f::new(1.0, 0.0);
53+ sprite.move_(v);
54+ }
Show on old repository browser