From a41f8ae6f8793765f3e9ecde1c515cb974f63847 Mon Sep 17 00:00:00 2001 From: mudabbir-ahmad Date: Thu, 9 Apr 2026 08:33:26 +0100 Subject: [PATCH] hopefully fixing some map issues due to trying to have player data persistance between game leaves, trying to fix claiming issues with caches too. Can't test on pc with this, pushing to test on my laptop :( --- src/components/gameplay/CacheCardItem.js | 34 ++++++++--- src/components/gameplay/PlayerMapView.js | 4 +- src/components/screens/LoginScreen.js | 2 +- src/components/screens/MapScreen.js | 73 ++++++++++++++++-------- 4 files changed, 80 insertions(+), 33 deletions(-) diff --git a/src/components/gameplay/CacheCardItem.js b/src/components/gameplay/CacheCardItem.js index bcc7d42..b3ffcd4 100644 --- a/src/components/gameplay/CacheCardItem.js +++ b/src/components/gameplay/CacheCardItem.js @@ -2,12 +2,9 @@ import {StyleSheet, Text, View} from 'react-native'; import Card from '../UI/Card'; import {Button} from '../UI/Button'; -const CacheCardItem = ({cache, isAdmin, isSelected, onEdit, onDelete, onSelect}) => { +const CacheCardItem = ({cache, isAdmin, isClaimed, isSelected, onEdit, onDelete, onSelect}) => { // Initialisation ------------- - const hasClaims = (cache.Claims || []).length > 0; - const statusText = hasClaims ? 'Claimed' : 'Available'; - const statusColor = hasClaims ? '#9ca3af' : '#16a34a'; const displayName = cache.name || cache.clue || 'Unnamed Cache'; // State ---------------------- @@ -15,15 +12,20 @@ const CacheCardItem = ({cache, isAdmin, isSelected, onEdit, onDelete, onSelect}) // View ----------------------- return ( - + - {displayName} + {displayName} {cache.name ? ( {cache.clue} ) : null} - {statusText} + {/* Players see team-specific claim status; admins see no status */} + {!isAdmin && ( + + {isClaimed ? 'Claimed' : 'Available'} + + )} {isAdmin ? ( @@ -41,6 +43,14 @@ const CacheCardItem = ({cache, isAdmin, isSelected, onEdit, onDelete, onSelect}) styleLabel={styles.btnLabel} /> + ) : isClaimed ? ( +