725 Commits over 516 Days - 0.06cph!
Remove fgd and use Display attribute
Prevent players placing blocks within a Build Exclusion Zone trigger's bounds
Move to Game.GetValidTeams and add Team.GetCore extension method
Add BaseGenerator for others to derive from with common logic
Update all generators to spawn items and update test world
Add Team.GetValidTeams to return a set of teams that the map has cores for
Updated EditorEntityList to fix overflow scroll and styling in some places
Add IEditorCallbacks interface. Add ModelProp (implements IEditorCallback). Allow placing of model props to voxel worlds (static).
Have the loading screen logo and spinner opacity transition separately from the parent so it doesn't look weird
Updated the loading screen to use the Core Wars logo and have it spin to indicate it's doing something
Update sbox-voxels submodule
Only remove an item entity if the player took everything in the stack
Merge branch 'main' of sbox-corewars
Add pool effects to each generator
Added ItemWorldIcon world panel for displaying items in the world that have no world model
Support ItemWorldIcon in ItemEntity and add pickup support
Update test code to spawn iron stack
Can press G / drop to enter walk mode in the editor
Added ability to rotate entities being placed or moved with right click
Merge branch 'main' of sbox-corewars
Added support for moving entities already placed in the editor and added MoveEntityAction for undo/redo support
Merge branch 'main' of sbox-corewars
Set model and render color for Team Core
Add EditorPropertyAttribute and use that instead of Property so can know exactly which ones are Core Wars related
Add Team.GetColor extension
Use resource pool models for generators
Remove editor mode convar now we have a dedicated editor mode map
Add Game.TryGetState and stub for generating resources with TeamGenerator
Added max stack sizes to resource items and test damage
Give attackers any resources held in the player's inventory when they are killed
Add InventoryContainer.Remove( InventoryItem ) as an alternative to item id
Resource items derive from ResourceItem and have placeholder icons
Add placeholder resource icon pngs
Add IResettable and IRessetable.ResetAll static member
Add Player.AssignRandomTeam (for now) and implement IResettable
Implement IResettable on CrystalGenerator, GoldGenerator and TeamCore
Add inventories to TeamChest and PersonalChest and implement IResettable
Assign a random team in GameState and respawn players when they should be
Add materials for Hurt and Exclusion Zone - figure out why AddCube renders quads the wrong way around later
Added Title and Group to each editor entity type
Update Editor Entity List to sort entities into their correct groups by category
Serialize world entity with inventory item data to ensure clients are aware of them
Remove old property
Refactor to NetInventoryContainer and add NetInventoryItem
Support serialization of InventoryItem and deserialization
Fixed RemoveEntityAction not working if loading a previously saved world
Added RespawnWhenAvailable and handle spawning when spawnpoint is ready
Move stuff item stuff to virtual props, support ItemEntity for world items and add ItemEntity entity
Add stubs for resource items
Update sbox-voxels submodule
Added extensions for Team to get the correct plastic block type and an extension to create a plastic block item
Reshuffle, ensure block classes are suffixed with Block and add Hardened Metal and Steel Panel
Rename White team to Cyan to match its plastic block
Added remaining plastic blocks
TeamBlock_Red -> RedPlastic
Removed some test blocks and procgen related code (seperate project from Core Wars now)
Attribute refactor to avoid redundancy
Update tools for attribute changes
Update BaseTrigger
Update TriggerHurt
Add stubs for TeamCore, TeamGenerator, TeamChest, PersonalChest, GoldGenerator and CrystalGenerator
Added Editor Block Data tool using groundwork done with Editor Entity Data dialog
Add SimpleForm class with AddRowWithCallback
Update EditorEntityData to send an open request and receive current values for suitable properties. When Save is pressed, send a cmd with updates values
Improved UI of the Editor Entity List to match Editor Entity Data
Add Player/EditorPlayer.GetSpawnpoint and use that
Remove Game.MoveToSpawnpoint for CW
Update sbox-voxels
Added SimpleForms.scss for global import
Add popup-container to EditorHud for use with form popups
Add attributes for entity data editor and add team property to PlayerSpawnpoint
EditorEntityPropertyAttribute
Simple entity data menu
Make EditorAction static vars private
Add EditorEntityData dialog stub
Update sbox-voxels
KillTrigger -> TriggerHurt and add DamagePerSecond property and serialize/deserialize it properly
Open EditorEntityData when in DataEdit mode of the Entity Tool
Add system for EditorActions to keep track of objects and give them unique ids
Update Place/Remove entity actions to use object id system so that references to "entities" can be kept and updated between undos and redos
Fixed action perform being called client-side when removing an entity
Improve display for entities tool to show whether or not an entity will be deleted, but also show its name
Added PlaceVolumeAction for undoable/redoable volume placement
Added RemoveEntityAction for undoable/redoable removal of entities
Add EditorEntityLibraryAttribute.VolumeMaterial and IsVolume
Update place_block.vmat to use TintColor instead of GhostColor
Update sbox-voxels submodule
Update LobbyState to only wait for VoxelWorld to initialize, not for spawnpoints and prevent task cancelled exception
Update MoveToSpawnpoint to handle PlayerSpawnpoint entities added to voxel worlds
Setup collisions with AABB for PlayerSpawnpoint but only when in editor mode
Added BaseTrigger and KillTrigger which implement ISourceEntity and IVolumeEntity for use with voxel worlds
Added VolumeEntity render entity type to display in editor mode
Can now place and remove volumes such as triggers for voxel worlds
Merge branch 'main' of sbox-corewars
Cache tools server-side to keep state between switches
Have SimpleRadialMenu be generic enough to be inherited
Add ToolSelectorMenu and EntityToolMenu seperate radial menus
Add ChangeModeCmd / SetMode and change callback for Mode to EntitiesTool
Forgot this
Add ChangeLibraryAttributeCmd and support for changing the currently selected entity
Add stub EditorEntityList and EditorEntityItem
Limit action time for Entities Tool
Add PlaceEntityAction to make placing entities undoable/redoable
Only open the entity tool menu if Reload is held but Duck isn't (prevent it popping up briefly when redoing)
Improve Editor Entity List view
Add icons for each entity tool mode