Removed the test committed zip file
Testing committing large file
Changed the default GameMode to GameModeBP
Adjusted the outline values for text widgets
Added outlines to all written widgets
Show waiting for other player message while the other player still hasn't connected to the game
Implemented En Passant capture move for the Pawn chess piece
Implemented the Pawn Promotion logic when reaching the other end of the board
- Created New Input To Allow to remove pieces at will from currently controlled Side
Created new material to indicate castling possibility on certain cell board
- Created a function that checks if the King is currently Checked
- Marked the create possible path function to create path for whether trying to create markers or checking paths of opponent pieces
- Changed the creation of the Pawn possible capture cells to create virtual path even if no chess piece is present
- Created material instance for illegal move cell
- Added the taken cell to the chess piece path and marked it as taken and disabled movement to taken piece
Changed the way the create possible move paths function in ChessPieceComponent works, to have a return value instead of calling a function in the board manager
Initial attempt to create a check if index is possible capture function
Overloaded the == operator of the FBoardCellIndex struct
Fixed Cell Marker presses not registering if the chess piece is overlapping with the cell marker
Implemented basic king path calculation movement
Rotated the model for the king to have the cross visible
Fixed chess piece being stuck on hovered highlight after choosing the desired move location
Implemented path generation for the knight
Fixed the seconds timer showing one digit number when the number of seconds is less than 10
Implemented the path generation Logic for: Bishop, Rook, Queen
Set the correct chess piece enum for the BP of each chess piece
Created template for the Chess Pieces UI
Added references to all chess pieces icons to their respective blueprints
Imported pieces icons to each chess piece folder
Removed arrays for removed chess pieces
Changes to pieces material settings to make them more distinct from checkers board
Changes to the Level Sequencer used for creating the icons for the chess pieces
Created setup for Icons creation
Updated the specular of the Chess Pieces material
Enabled support for Alpha Channel in Post Processing for the Tonemapper to allow to capture scenes with alpha
Enabled Movie Render Queue plugin to create icons for the different chess pieces
Created ChessCellMarkerBP to be used as template for the cell markers
Initial Implementation of the Capture logic
Moved Reset Cell Markers function to be a public function to be used to reset cell markers when de-selecting chess piece
- Changed the Chess Piece ptr in the Board Cell to be replicated
Added checks to the pawn path creator to make sure created cells have valid indices
- Created Cell Marker BP
- Created new Class for Chess Cell Marker
Moved the set selected chess piece function definition to ChessPlayerController.cpp
Added enum for chess types
Removed the creation of the cell markers by defaults that covers the whole board grid
- Added definition for the Cell Marker collision channel
Added taken material for the Cell Markers
Added new collision channel and presets for cell markers
Made hovered chess pieces have an outline if they aren't the selected chess piece
Committing missing files for r35
- Created new cancel selection input and added it to the Input Mapping Context
Added comments to describe what newly added functions to the board manager do
- Created Logic to set UI Elements variables from values cached in the Board Manager
- Initial Implementation of the function that creates the Chess Game Widget at Begin Play, and destroys at End Play
- Create BP for the HUD class
Created Initial Implementation of the ChessGameUI widget
Added UMG module to the build.cs file
Initial Implementation of the ChessPlayerHUD class
Moved the Timers and current turn to be present in the Chess Board Manager instead of each player controller to have access to both timers, made them set on server and replicated to clients
Chess Game Mode:
Chess Board Manager
Chess Player Controller:
Changes to Chess Game Mode blueprint file
ChessGameMode:
Fixed ChessPlayerController wrong naming
Added Post Process to test map, with added outline post process material
Initial Implementation of the Hover and select outline materials
Initial Implementation of the ChessPlayerController:
WIP
Changed the initialization of the player controllers in the ChessGameMode to randomly assign each controller to be either player 1 or 2
Added macro definition for the White Chess Piece and black chess piece collisions
ChessPieceComponent: Created function to set if the piece is black piece or not, as well as to toggle the highlight of the chess piece
Added function to ChessPlayerPawn to get camera horizontal height of the origin point of the actor
Added new collision channels for white and black chess piece
Committed the solution for the project
- Created Blueprints for ChessPlayerPawn, ChessPlayerController, ChessGamemode
Set the ChessGamemode as the default GameMode for the Project
- Created ChessPlayerPawn with Spring Arm and Camera Component
- Changed the FBoardCell to USTRUCT and to have UPROPERTY for all of it's properties so they can be replicated
- Reimported All game mesh models to fix them not being centered
- Created Chess Piece Component to hold the logic of each chess piece on the board
Created Chess Board Manager BP and tested it
Created Chess Board Manager class that creates a grid on the chess board mesh
- Disabled Lumen
Initial Project Commit