warfactoryracine/tools/scripts/sync_helpers.sh
StillHammer f6c3b3430d Add comprehensive IDataTree configuration system
- Create modular IDataNode interface with tree navigation, pattern matching, and typed access
- Implement IDataTree container with manual hot-reload capabilities
- Add DataTreeFactory for flexible data source management
- Support hierarchical data with per-node blobs and children
- Enable pattern matching search (*wildcards) across entire subtrees
- Provide type-safe property access (getString, getInt, getBool, getDouble)
- Include hash system for validation and synchronization (getDataHash, getTreeHash)
- Add property-based queries with lambda predicates for gameplay data filtering
- Fix window positioning system to eliminate UI overlaps
- Enforce explicit type declarations (ban auto keyword) in CLAUDE.md coding standards

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-27 10:42:35 +08:00

37 lines
1.1 KiB
Bash

#!/bin/bash
# Sync helper files to all modules
# Run this when core interfaces change
CORE_HELPERS="core/include/warfactory"
MODULE_DIRS="modules/*/shared"
echo "🔄 Syncing helper files to all modules..."
if [ ! -d "$CORE_HELPERS" ]; then
echo "❌ Core helpers directory not found: $CORE_HELPERS"
exit 1
fi
for module_dir in $MODULE_DIRS; do
if [ -d "$module_dir" ]; then
module_name=$(dirname "$module_dir" | basename)
echo " → Syncing to $module_name"
# Copy core interfaces
cp "$CORE_HELPERS/IModule.h" "$module_dir/"
cp "$CORE_HELPERS/ISocket.h" "$module_dir/"
# Copy base helper (if exists)
if [ -f "modules/factory/shared/ModuleBase.h" ]; then
cp "modules/factory/shared/ModuleBase.h" "$module_dir/"
fi
fi
done
echo "✅ Helper sync completed!"
echo ""
echo "📋 Next steps:"
echo " cd modules/factory && cmake . && make factory-module"
echo " cd modules/economy && cmake . && make economy-module"
echo " cd modules/logistic && cmake . && make logistic-module"