From a5a21d096803ca6ebf076c17f20b41414f84cd9c Mon Sep 17 00:00:00 2001
From: andy <andynewjack@protonmail.com>
Date: Sun, 19 Dec 2021 19:44:27 +0000
Subject: [PATCH] killcounters, redbox mode, failing unseal test, and random
 debug strings

---
 src/ship/packet/handler/direct_message.rs | 4 ++++
 tests/test_unseal_items.rs                | 3 +++
 2 files changed, 7 insertions(+)

diff --git a/src/ship/packet/handler/direct_message.rs b/src/ship/packet/handler/direct_message.rs
index 963fa66..548fb91 100644
--- a/src/ship/packet/handler/direct_message.rs
+++ b/src/ship/packet/handler/direct_message.rs
@@ -79,6 +79,7 @@ pub async fn request_item<EG>(id: ClientId,
 where
     EG: EntityGateway
 {
+    println!("src::ship::packet::handler::request_item() - requesting an item!");
     let room_id = client_location.get_room(id).map_err(|err| -> ClientLocationError { err.into() })?;
     let room = rooms.get_mut(room_id.0)
         .ok_or(ShipError::InvalidRoom(room_id.0 as u32))?
@@ -86,7 +87,9 @@ where
         .ok_or(ShipError::InvalidRoom(room_id.0 as u32))?;
 
     let monster = room.maps.enemy_by_id(request_item.enemy_id as usize)?;
+    println!("room id: {:?}, monster: {:?}", room_id, monster);
     if monster.dropped_item {
+        println!("monster {:?} already dropped an item!", monster);
         return Err(ShipError::MonsterAlreadyDroppedItem(id, request_item.enemy_id).into())
     }
 
@@ -95,6 +98,7 @@ where
     let client_and_drop = clients_in_area.into_iter()
         .filter_map(|area_client| {
             if room.redbox {
+                println!("red box mode is currently enabled. dropping red box!");
                 room.drop_table.get_rare_drop(&monster.map_area, &monster.monster).map(|item_drop_type| {
                     (area_client, item_drop_type)
                 })
diff --git a/tests/test_unseal_items.rs b/tests/test_unseal_items.rs
index 279e914..33bde4b 100644
--- a/tests/test_unseal_items.rs
+++ b/tests/test_unseal_items.rs
@@ -1,4 +1,7 @@
 /* TODO:
+1. test to check if sjs/lame/limiter drop with Some() kill counter enabled
+2. test to make sure other items drop with None kill counter
+3. test kill counters get incremented per kill
 4. test unsealing item:
     - client item id does not change
     - unsealed item no longer has kill counter