equal
deleted
inserted
replaced
41 } |
41 } |
42 |
42 |
43 pub fn create_renderer(&mut self, width: u16, height: u16) { |
43 pub fn create_renderer(&mut self, width: u16, height: u16) { |
44 self.renderer = Some(MapRenderer::new(512, 512)); |
44 self.renderer = Some(MapRenderer::new(512, 512)); |
45 self.camera = Camera::with_size(Size::new(width as usize, height as usize)); |
45 self.camera = Camera::with_size(Size::new(width as usize, height as usize)); |
|
46 |
|
47 use mapgen::{theme::Theme, MapGenerator}; |
|
48 use std::path::Path; |
|
49 |
|
50 if let Some(ref state) = self.game_state { |
|
51 let theme = |
|
52 Theme::load(Path::new("../../share/hedgewars/Data/Themes/Cheese/")).unwrap(); |
|
53 let texture = MapGenerator::new().make_texture32(&state.land, &theme); |
|
54 if let Some(ref mut renderer) = self.renderer { |
|
55 renderer.init(&texture); |
|
56 } |
|
57 } |
46 } |
58 } |
47 |
59 |
48 pub fn set_seed(&mut self, seed: &[u8]) { |
60 pub fn set_seed(&mut self, seed: &[u8]) { |
49 self.random_numbers_gen = LaggedFibonacciPRNG::new(seed); |
61 self.random_numbers_gen = LaggedFibonacciPRNG::new(seed); |
50 } |
62 } |
81 |
93 |
82 let params = LandGenerationParameters::new(0u32, u32::max_value(), 5, false, false); |
94 let params = LandGenerationParameters::new(0u32, u32::max_value(), 5, false, false); |
83 let landgen = TemplatedLandGenerator::new(template); |
95 let landgen = TemplatedLandGenerator::new(template); |
84 let land = landgen.generate_land(¶ms, &mut self.random_numbers_gen); |
96 let land = landgen.generate_land(¶ms, &mut self.random_numbers_gen); |
85 |
97 |
86 use mapgen::{ |
|
87 theme::{slice_u32_to_u8, Theme}, |
|
88 MapGenerator, |
|
89 }; |
|
90 |
|
91 use std::path::Path; |
|
92 |
|
93 let theme = Theme::load(Path::new("../../share/hedgewars/Data/Themes/Cheese/")).unwrap(); |
|
94 let texture = MapGenerator::new().make_texture32(&land, &theme); |
|
95 if let Some(ref mut renderer) = self.renderer { |
|
96 renderer.init(&texture); |
|
97 } |
|
98 self.game_state = Some(GameState::new(land, physics)); |
98 self.game_state = Some(GameState::new(land, physics)); |
99 } |
99 } |
100 |
100 |
101 pub fn move_camera(&mut self, position_shift: Point, zoom_shift: f32) { |
101 pub fn move_camera(&mut self, position_shift: Point, zoom_shift: f32) { |
102 self.camera.position += position_shift; |
102 self.camera.position += position_shift; |