From f6e8a7f0d4280eef2f1a28e6b4fae4b9c924e366 Mon Sep 17 00:00:00 2001 From: Bart Dring Date: Thu, 2 Dec 2021 14:44:57 -0600 Subject: [PATCH] updates --- TWANG32/TWANG32.ino | 21 +++++++++------------ TWANG32/wifi_ap.h | 2 +- parts/stl/6_pack_cover_top.stl | Bin 0 -> 73684 bytes 3 files changed, 10 insertions(+), 13 deletions(-) create mode 100644 parts/stl/6_pack_cover_top.stl diff --git a/TWANG32/TWANG32.ino b/TWANG32/TWANG32.ino index a8e0793..f59167c 100644 --- a/TWANG32/TWANG32.ino +++ b/TWANG32/TWANG32.ino @@ -108,7 +108,7 @@ Enemy enemyPool[ENEMY_COUNT] = { }; -#define PARTICLE_COUNT 40 +#define PARTICLE_COUNT 100 Particle particlePool[PARTICLE_COUNT] = { Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle(), Particle() }; @@ -967,12 +967,12 @@ void tickBossKilled(long mm) // boss funeral } void tickDie(long mm) { // a short bright explosion...particles persist after it. - const int duration = 100; // milliseconds - const int width = 10; // half width of the explosion + const int duration = 200; // milliseconds + const int width = 20; // half width of the explosion if(stageStartTime+duration > mm) {// Spread red from player position up and down the width - int brightness = map((mm-stageStartTime), 0, duration, 255, 50); // this allows a fade from white to red + int brightness = map((mm-stageStartTime), 0, duration, 255, 150); // this allows a fade from white to red // fill up int n = _max(map(((mm-stageStartTime)), 0, duration, getLED(playerPosition), getLED(playerPosition)+width), 0); @@ -1127,22 +1127,19 @@ void save_game_stats(bool bossKill) // --------------------------------- void screenSaverTick(){ long mm = millis(); - int mode = (mm/30000)%5; + int mode = (mm/30000)%4; SFXcomplete(); // turn off sound...play testing showed this to be a problem if (mode == 0) { - LED_march(); + Fire2012(); } - else if (mode == 1) { - random_LED_flashes(); - } - else if (mode == 2) + else if (mode == 1) sinelon(); - else if (mode == 3) + else if (mode == 2) juggle(); else { - Fire2012(); + random_LED_flashes(); } } diff --git a/TWANG32/wifi_ap.h b/TWANG32/wifi_ap.h index f5f0d9d..e2511d1 100644 --- a/TWANG32/wifi_ap.h +++ b/TWANG32/wifi_ap.h @@ -2,7 +2,7 @@ #include "settings.h" const char* ssid = "TWANG_AP"; -const char* passphrase = "12345666"; +const char* passphrase = "12345678"; WiFiServer server(80); diff --git a/parts/stl/6_pack_cover_top.stl b/parts/stl/6_pack_cover_top.stl new file mode 100644 index 0000000000000000000000000000000000000000..d435f3f5cb5336986b94e931a7712f9ed6dffd30 GIT binary patch literal 73684 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 $4?DtjV;QKg!L{xcO&K1!U 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