diff --git a/Config/DefaultEngine.ini b/Config/DefaultEngine.ini index f08eb52..c1d5b98 100644 --- a/Config/DefaultEngine.ini +++ b/Config/DefaultEngine.ini @@ -49,7 +49,7 @@ bUseManualIPAddress=False ManualIPAddress= [/Script/EngineSettings.GameMapsSettings] -EditorStartupMap=/Game/Blueprints/Levels/TestMap.TestMap +EditorStartupMap=/Game/Levels/TestMap.TestMap LocalMapOptions= TransitionMap=None bUseSplitscreen=True @@ -58,7 +58,7 @@ ThreePlayerSplitscreenLayout=FavorTop FourPlayerSplitscreenLayout=Grid bOffsetPlayerGamepadIds=False GameInstanceClass=/Script/Engine.GameInstance -GameDefaultMap=/Game/Blueprints/Levels/TestMap.TestMap +GameDefaultMap=/Game/Levels/TestMap.TestMap ServerDefaultMap=/Engine/Maps/Entry.Entry GlobalDefaultGameMode=/Game/Blueprints/Game/BP_ExoGameMode.BP_ExoGameMode_C GlobalDefaultServerGameMode=None diff --git a/Content/Blueprints/Characters/Enemy/BP_ExoEnemy.uasset b/Content/Blueprints/Characters/Enemy/BP_ExoEnemy.uasset new file mode 100644 index 0000000..085438d Binary files /dev/null and b/Content/Blueprints/Characters/Enemy/BP_ExoEnemy.uasset differ diff --git a/Content/Blueprints/Characters/Player/BP_ExoPlayerCharacter.uasset b/Content/Blueprints/Characters/Player/BP_ExoPlayerCharacter.uasset new file mode 100644 index 0000000..d181a5d Binary files /dev/null and b/Content/Blueprints/Characters/Player/BP_ExoPlayerCharacter.uasset differ diff --git a/Content/Blueprints/Game/BP_ExoGameMode.uasset b/Content/Blueprints/Game/BP_ExoGameMode.uasset index f881e0d..1621954 100644 Binary files a/Content/Blueprints/Game/BP_ExoGameMode.uasset and b/Content/Blueprints/Game/BP_ExoGameMode.uasset differ diff --git a/Content/Blueprints/Player/BP_ExoPlayerController.uasset b/Content/Blueprints/Player/BP_ExoPlayerController.uasset index 8ff1a75..2eff983 100644 Binary files a/Content/Blueprints/Player/BP_ExoPlayerController.uasset and b/Content/Blueprints/Player/BP_ExoPlayerController.uasset differ diff --git a/Content/Blueprints/Player/Inputs/IMC_ExoMappingContext.uasset b/Content/Blueprints/Player/Inputs/IMC_ExoMappingContext.uasset new file mode 100644 index 0000000..22ef621 Binary files /dev/null and b/Content/Blueprints/Player/Inputs/IMC_ExoMappingContext.uasset differ diff --git a/Content/Blueprints/Player/Inputs/Inputs/AI_Look.uasset b/Content/Blueprints/Player/Inputs/Inputs/AI_Look.uasset new file mode 100644 index 0000000..e24eb79 Binary files /dev/null and b/Content/Blueprints/Player/Inputs/Inputs/AI_Look.uasset differ diff --git a/Content/Blueprints/Player/Inputs/Inputs/AI_Move.uasset b/Content/Blueprints/Player/Inputs/Inputs/AI_Move.uasset new file mode 100644 index 0000000..d61575b Binary files /dev/null and b/Content/Blueprints/Player/Inputs/Inputs/AI_Move.uasset differ diff --git a/Source/Exo/Private/Characters/ExoCharacterBase.cpp b/Source/Exo/Private/Characters/ExoCharacterBase.cpp index eb7bb80..7a8e85c 100644 --- a/Source/Exo/Private/Characters/ExoCharacterBase.cpp +++ b/Source/Exo/Private/Characters/ExoCharacterBase.cpp @@ -3,32 +3,21 @@ #include "Characters/ExoCharacterBase.h" -// Sets default values AExoCharacterBase::AExoCharacterBase() { - // Set this character to call Tick() every frame. You can turn this off to improve performance if you don't need it. - PrimaryActorTick.bCanEverTick = true; + PrimaryActorTick.bCanEverTick = false; + + Weapon = CreateDefaultSubobject("Weapon"); + Weapon->SetupAttachment(GetMesh(), FName("WeaponHandSocket")); + Weapon->SetCollisionEnabled(ECollisionEnabled::NoCollision); } -// Called when the game starts or when spawned void AExoCharacterBase::BeginPlay() { Super::BeginPlay(); } -// Called every frame -void AExoCharacterBase::Tick(float DeltaTime) -{ - Super::Tick(DeltaTime); -} - -// Called to bind functionality to input -void AExoCharacterBase::SetupPlayerInputComponent(UInputComponent* PlayerInputComponent) -{ - Super::SetupPlayerInputComponent(PlayerInputComponent); - -} diff --git a/Source/Exo/Private/Characters/ExoEnemy.cpp b/Source/Exo/Private/Characters/ExoEnemy.cpp new file mode 100644 index 0000000..9e3e8c5 --- /dev/null +++ b/Source/Exo/Private/Characters/ExoEnemy.cpp @@ -0,0 +1,5 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "Characters/ExoEnemy.h" + diff --git a/Source/Exo/Private/Characters/ExoPlayerCharacter.cpp b/Source/Exo/Private/Characters/ExoPlayerCharacter.cpp new file mode 100644 index 0000000..3bdcc61 --- /dev/null +++ b/Source/Exo/Private/Characters/ExoPlayerCharacter.cpp @@ -0,0 +1,20 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "Characters/ExoPlayerCharacter.h" +#include "GameFramework/CharacterMovementComponent.h" + +AExoPlayerCharacter::AExoPlayerCharacter() +{ + GetCharacterMovement()->bSnapToPlaneAtStart = true; + + bUseControllerRotationPitch = true; + bUseControllerRotationYaw = true; + bUseControllerRotationRoll = false; +} + +void AExoPlayerCharacter::BeginPlay() +{ + Super::BeginPlay(); + +} diff --git a/Source/Exo/Public/Characters/ExoCharacterBase.h b/Source/Exo/Public/Characters/ExoCharacterBase.h index 4a0a2ea..446a9e3 100644 --- a/Source/Exo/Public/Characters/ExoCharacterBase.h +++ b/Source/Exo/Public/Characters/ExoCharacterBase.h @@ -12,18 +12,12 @@ class EXO_API AExoCharacterBase : public ACharacter GENERATED_BODY() public: - // Sets default values for this character's properties AExoCharacterBase(); protected: - // Called when the game starts or when spawned virtual void BeginPlay() override; -public: - // Called every frame - virtual void Tick(float DeltaTime) override; - - // Called to bind functionality to input - virtual void SetupPlayerInputComponent(class UInputComponent* PlayerInputComponent) override; - + UPROPERTY(EditAnywhere, Category = "Combat") + TObjectPtr Weapon; + }; diff --git a/Source/Exo/Public/Characters/ExoEnemy.h b/Source/Exo/Public/Characters/ExoEnemy.h new file mode 100644 index 0000000..f6559c1 --- /dev/null +++ b/Source/Exo/Public/Characters/ExoEnemy.h @@ -0,0 +1,17 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "Characters/ExoCharacterBase.h" +#include "ExoEnemy.generated.h" + +/** + * + */ +UCLASS() +class EXO_API AExoEnemy : public AExoCharacterBase +{ + GENERATED_BODY() + +}; diff --git a/Source/Exo/Public/Characters/ExoPlayerCharacter.h b/Source/Exo/Public/Characters/ExoPlayerCharacter.h new file mode 100644 index 0000000..d694ee0 --- /dev/null +++ b/Source/Exo/Public/Characters/ExoPlayerCharacter.h @@ -0,0 +1,21 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "Characters/ExoCharacterBase.h" +#include "ExoPlayerCharacter.generated.h" + +UCLASS() +class EXO_API AExoPlayerCharacter : public AExoCharacterBase +{ + GENERATED_BODY() + +public: + AExoPlayerCharacter(); + +protected: + virtual void BeginPlay() override; + + +};