Skip to content

Commit

Permalink
Merge pull request #517 from zjhongxian/official_master
Browse files Browse the repository at this point in the history
slua 2.0版本
  • Loading branch information
zjhongxian authored May 11, 2023
2 parents 220cb17 + bd2fd87 commit eebb18f
Show file tree
Hide file tree
Showing 156 changed files with 38,704 additions and 16,142 deletions.
53 changes: 50 additions & 3 deletions Config/DefaultInput.ini
Original file line number Diff line number Diff line change
@@ -1,11 +1,14 @@


[/Script/Engine.InputSettings]
-AxisConfig=(AxisKeyName="Gamepad_LeftX",AxisProperties=(DeadZone=0.25,Exponent=1.f,Sensitivity=1.f))
-AxisConfig=(AxisKeyName="Gamepad_LeftY",AxisProperties=(DeadZone=0.25,Exponent=1.f,Sensitivity=1.f))
-AxisConfig=(AxisKeyName="Gamepad_RightX",AxisProperties=(DeadZone=0.25,Exponent=1.f,Sensitivity=1.f))
-AxisConfig=(AxisKeyName="Gamepad_RightY",AxisProperties=(DeadZone=0.25,Exponent=1.f,Sensitivity=1.f))
-AxisConfig=(AxisKeyName="MouseX",AxisProperties=(DeadZone=0.f,Exponent=1.f,Sensitivity=0.07f))
-AxisConfig=(AxisKeyName="MouseY",AxisProperties=(DeadZone=0.f,Exponent=1.f,Sensitivity=0.07f))
-AxisConfig=(AxisKeyName="Mouse2D",AxisProperties=(DeadZone=0.f,Exponent=1.f,Sensitivity=0.07f))
+AxisConfig=(AxisKeyName="Mouse2D",AxisProperties=(DeadZone=0.000000,Sensitivity=0.070000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="Gamepad_LeftX",AxisProperties=(DeadZone=0.250000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="Gamepad_LeftY",AxisProperties=(DeadZone=0.250000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="Gamepad_RightX",AxisProperties=(DeadZone=0.250000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
Expand All @@ -29,13 +32,57 @@
+AxisConfig=(AxisKeyName="MotionController_Right_Grip2Axis",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="Gamepad_Special_Left_X",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="Gamepad_Special_Left_Y",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="Vive_Left_Trigger_Axis",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="Vive_Left_Trackpad_X",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="Vive_Left_Trackpad_Y",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="Vive_Right_Trigger_Axis",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="Vive_Right_Trackpad_X",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="Vive_Right_Trackpad_Y",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="MixedReality_Left_Trigger_Axis",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="MixedReality_Left_Thumbstick_X",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="MixedReality_Left_Thumbstick_Y",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="MixedReality_Left_Trackpad_X",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="MixedReality_Left_Trackpad_Y",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="MixedReality_Right_Trigger_Axis",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="MixedReality_Right_Thumbstick_X",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="MixedReality_Right_Thumbstick_Y",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="MixedReality_Right_Trackpad_X",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="MixedReality_Right_Trackpad_Y",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="OculusTouch_Left_Grip_Axis",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="OculusTouch_Left_Trigger_Axis",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="OculusTouch_Left_Thumbstick_X",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="OculusTouch_Left_Thumbstick_Y",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="OculusTouch_Right_Grip_Axis",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="OculusTouch_Right_Trigger_Axis",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="OculusTouch_Right_Thumbstick_X",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="OculusTouch_Right_Thumbstick_Y",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Left_Grip_Axis",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Left_Grip_Force",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Left_Trigger_Axis",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Left_Thumbstick_X",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Left_Thumbstick_Y",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Left_Trackpad_X",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Left_Trackpad_Y",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Left_Trackpad_Force",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Right_Grip_Axis",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Right_Grip_Force",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Right_Trigger_Axis",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Right_Thumbstick_X",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Right_Thumbstick_Y",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Right_Trackpad_X",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Right_Trackpad_Y",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
+AxisConfig=(AxisKeyName="ValveIndex_Right_Trackpad_Force",AxisProperties=(DeadZone=0.000000,Sensitivity=1.000000,Exponent=1.000000,bInvert=False))
bAltEnterTogglesFullscreen=True
bF11TogglesFullscreen=True
bUseMouseForTouch=False
bEnableMouseSmoothing=True
bEnableFOVScaling=True
bCaptureMouseOnLaunch=True
bDefaultViewportMouseLock=False
bEnableLegacyInputScales=True
bEnableMotionControls=True
bFilterInputByPlatformUser=False
bShouldFlushPressedKeysOnViewportFocusLost=True
bEnableDynamicComponentInputBinding=True
bAlwaysShowTouchInterface=False
bShowConsoleOnFourFingerTap=True
bEnableGestureRecognizer=False
Expand All @@ -45,9 +92,9 @@ DefaultViewportMouseLockMode=LockOnCapture
FOVScale=0.011110
DoubleClickTime=0.200000
+ActionMappings=(ActionName="Fire",bShift=False,bCtrl=False,bAlt=False,bCmd=False,Key=Up)
DefaultPlayerInputClass=/Script/Engine.PlayerInput
DefaultInputComponentClass=/Script/Engine.InputComponent
DefaultTouchInterface=/Engine/MobileResources/HUD/DefaultVirtualJoysticks.DefaultVirtualJoysticks
ConsoleKey=None
-ConsoleKeys=Tilde
+ConsoleKeys=Tilde


12 changes: 5 additions & 7 deletions Content/Lua/LuaActor.lua
Original file line number Diff line number Diff line change
@@ -1,21 +1,19 @@


local actor={}
local LuaActor ={}

-- override event from blueprint
function actor:ReceiveBeginPlay()
function LuaActor:ReceiveBeginPlay()
self.bCanEverTick = true
-- set bCanBeDamaged property in parent
self.bCanBeDamaged = false
print("actor:ReceiveBeginPlay")
end

-- override event from blueprint
function actor:ReceiveEndPlay(reason)
function LuaActor:ReceiveEndPlay(reason)
print("actor:ReceiveEndPlay")
end

function actor:Tick(dt)
function LuaActor:Tick(dt)
print("actor:Tick",self,dt)
-- call actor function
local pos = self:K2_GetActorLocation()
Expand All @@ -24,4 +22,4 @@ function actor:Tick(dt)
print("actor pos",pos,dist)
end

return actor
return Class(nil, nil, LuaActor)
15 changes: 8 additions & 7 deletions Content/Lua/LuaBpActor.lua
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@

local actor={}
local LuaBpActor = {}

-- override event from blueprint
function actor:ReceiveBeginPlay()
function LuaBpActor:ReceiveBeginPlay()
LuaBpActor.__super.ReceiveBeginPlay(self)
self.bCanEverTick = true
-- set bCanBeDamaged property in parent
self.bCanBeDamaged = false
Expand All @@ -12,23 +12,24 @@ function actor:ReceiveBeginPlay()
end

-- override event from blueprint
function actor:ReceiveEndPlay(reason)
function LuaBpActor:ReceiveEndPlay(reason)
print("bpactor:ReceiveEndPlay")
-- call super ReceiveEndPlay
self.Super:ReceiveEndPlay(reason)
end

function actor:ReceiveTick(dt)
function LuaBpActor:ReceiveTick(dt)
print("bpactor:ReceiveTick",self,dt)
local x = self.Val
for k,v in pairs(x) do
print("over",k,v)
end
end

function actor:bpcall(value)
function LuaBpActor:bpcall(value)
assert(value==1024)
print("called from blueprint",value)
end

return actor
local CLuaActor = require("LuaActor")
return Class(CLuaActor, nil, LuaBpActor)
6 changes: 3 additions & 3 deletions Content/Lua/LuaGameMode.lua
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
local gamemode={}
local LuaGameMode = {}

function gamemode:ReceiveBeginPlay()
function LuaGameMode:ReceiveBeginPlay()
-- call super ReceiveBeginPlay
self.Super:ReceiveBeginPlay()
print("gamemode:ReceiveBeginPlay")
end

return gamemode
return Class(nil, nil, LuaGameMode)
140 changes: 140 additions & 0 deletions Content/Lua/LuaGameState.lua
Original file line number Diff line number Diff line change
@@ -0,0 +1,140 @@
local LuaGameState =
{
ServerRPC = {}, --C2S类RPC列表,类似UFUNCTION宏中的Server
ClientRPC = {}, --S2C类RPC列表,类似UFUNCTION宏中的Client
MulticastRPC = {}, --多播类RPC列表,类似UFUNCTION宏中的NetMulticast
}

local EPropertyClass = import("EPropertyClass")

LuaGameState.ServerRPC.TestServerRPC = {
-- 是否可靠RPC
Reliable = true,
-- 定义参数列表
Params =
{
EPropertyClass.Int,
EPropertyClass.Str,
EPropertyClass.bool,
}
}

LuaGameState.ClientRPC.TestClientRPC = {
-- 是否可靠RPC
Reliable = true,
-- 定义参数列表
Params =
{
EPropertyClass.Int,
EPropertyClass.Str,
EPropertyClass.bool,
}
}

LuaGameState.MulticastRPC.TestMulticastRPC = {
-- 是否可靠RPC
Reliable = true,
-- 定义参数列表
Params =
{
EPropertyClass.Int,
EPropertyClass.Str,
EPropertyClass.bool,
}
}

function LuaGameState:ctor(selfType)
self.Name = "LuaGameStateTestName"
end

function LuaGameState:TestServerRPC(ArgInt, ArgStr, ArgBool)
print("LuaGameState:TestServerRPC", ArgInt, ArgStr, ArgBool)
end

function LuaGameState:TestClientRPC(ArgInt, ArgStr, ArgBool)
print("LuaGameState:TestClientRPC", ArgInt, ArgStr, ArgBool)
end

function LuaGameState:TestMulticastRPC(ArgInt, ArgStr, ArgBool)
print("LuaGameState:TestMulticastRPC", ArgInt, ArgStr, ArgBool)
end

function LuaGameState:GetLifetimeReplicatedProps()
local ELifetimeCondition = import("ELifetimeCondition")
local FVectorType = import("Vector")
return {
{ "Name", ELifetimeCondition.COND_InitialOnly, EPropertyClass.Str},
{ "HP", ELifetimeCondition.COND_OwnerOnly, EPropertyClass.Float},
{ "Position", ELifetimeCondition.COND_SimulatedOnly, FVectorType},
{ "TeamateNameList", ELifetimeCondition.COND_None, EPropertyClass.Array, EPropertyClass.Str},
{ "TeamatePositions", ELifetimeCondition.COND_None, EPropertyClass.Array, FVectorType},
}
end

-- override event from blueprint
function LuaGameState:ReceiveBeginPlay()
self.bCanEverTick = true
-- set bCanBeDamaged property in parent
self.bCanBeDamaged = false
print("actor:ReceiveBeginPlay")

local KismetSystemLibrary = import("KismetSystemLibrary")
if KismetSystemLibrary.IsDedicatedServer(self) then
self:TestClientRPC(1, "TestClientRPC", false)
self:TestMulticastRPC(2, "TestMulticastRPC", true)
else
self:TestServerRPC(3, "TestServerRPC", true)
end

self.Name = "Poli"
self.Hp = 100
self.Position = FVector(100, 200, 300)
self.TeamateNameList = {"Teamate1", "Teamate2", "Teamate3", "Teamate4", "Teamate5"}

local TeamatePos = FVector(100, 200, 300)
local TeamatePositions = self.TeamatePositions
TeamatePositions:Add(TeamatePos)
TeamatePos.X = 101
TeamatePositions:Add(TeamatePos)
TeamatePos.X = 102
TeamatePositions:Add(TeamatePos)
TeamatePos.X = 103
TeamatePositions:Add(TeamatePos)
--- Mark TeamatePositions dirty to sync
self.TeamatePositions = TeamatePositions
end

function LuaGameState:OnRep_Name(OldName)
print("LuaGameState:OnRep_Name: ", OldName, self.Name)
end

function LuaGameState:OnRep_HP(OldHP)
print("LuaGameState:OnRep_HP: ", OldHP, self.HP)
end

function LuaGameState:OnRep_Position(OldPosition)
local Position = self.Position
print("LuaGameState:OnRep_Position: ", OldPosition.X, OldPosition.Y, OldPosition.Z, "New Position:", Position.X, Position.Y, Position.Z)
end

function LuaGameState:OnRep_TeamateNameList(OldNameList)
print("LuaGameState:OnRep_TeamateNameList: ")
for k, v in pairs(self.TeamateNameList) do
print("Teamate:", k, v)
end
end

function LuaGameState:OnRep_TeamatePositions()
print("LuaGameState:OnRep_TeamatePositions: ")
for k, v in pairs(self.TeamatePositions) do
print("TeamatePositions: ", k, "Pos:", v.X, v.Y, v.Z)
end
end

-- override event from blueprint
function LuaGameState:ReceiveEndPlay(reason)
print("LuaGameState:ReceiveEndPlay")
end


return Class(nil, nil, LuaGameState)
Loading

0 comments on commit eebb18f

Please sign in to comment.