mirror of
https://github.com/jimathy/jim_bridge.git
synced 2026-08-17 05:56:02 +01:00
Actual working checks for hasJob()
`goto skip` is weird.
This commit is contained in:
@@ -122,7 +122,7 @@ function GetPlayer(source)
|
|||||||
return framework.GetPlayer(source)
|
return framework.GetPlayer(source)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
return nil
|
return {}
|
||||||
end
|
end
|
||||||
|
|
||||||
-------------------------------------------------------------
|
-------------------------------------------------------------
|
||||||
|
|||||||
@@ -439,27 +439,30 @@ local hasGroupFunc = {
|
|||||||
function(group, grade, src)
|
function(group, grade, src)
|
||||||
local hasJobFlag, duty = false, true
|
local hasJobFlag, duty = false, true
|
||||||
local playerInfo = GetPlayer(src)
|
local playerInfo = GetPlayer(src)
|
||||||
if not playerInfo then
|
local jobInfo, gangInfo = nil, nil
|
||||||
goto skip
|
if next(playerInfo) then
|
||||||
|
jobInfo = playerInfo.job
|
||||||
|
gangInfo = playerInfo.gang
|
||||||
|
if playerInfo.PlayerData then
|
||||||
|
jobInfo = playerInfo.PlayerData.job
|
||||||
|
gangInfo = playerInfo.PlayerData.gang
|
||||||
|
end
|
||||||
end
|
end
|
||||||
local jobinfo = playerInfo and playerInfo.job or playerInfo.PlayerData.job
|
if jobInfo and jobInfo.name == group then
|
||||||
if jobinfo and jobinfo.name == group then
|
|
||||||
hasJobFlag = true
|
hasJobFlag = true
|
||||||
duty = jobinfo.onduty
|
duty = jobInfo.onduty
|
||||||
if grade and not (grade <= jobinfo.grade.level) then
|
if grade and not (grade <= jobInfo.grade.level) then
|
||||||
hasJobFlag = false
|
hasJobFlag = false
|
||||||
end
|
end
|
||||||
return hasJobFlag, duty
|
return hasJobFlag, duty
|
||||||
end
|
end
|
||||||
local ganginfo = playerInfo and playerInfo.gang or playerInfo.PlayerData.gang
|
if gangInfo and gangInfo.name == group then
|
||||||
if ganginfo and ganginfo.name == group then
|
|
||||||
hasJobFlag = true
|
hasJobFlag = true
|
||||||
if grade and not (grade <= ganginfo.grade.level) then
|
if grade and not (grade <= gangInfo.grade.level) then
|
||||||
hasJobFlag = false
|
hasJobFlag = false
|
||||||
end
|
end
|
||||||
return hasJobFlag, duty
|
return hasJobFlag, duty
|
||||||
end
|
end
|
||||||
::skip::
|
|
||||||
return hasJobFlag, duty
|
return hasJobFlag, duty
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
@@ -469,21 +472,25 @@ local hasGroupFunc = {
|
|||||||
function(group, grade, src)
|
function(group, grade, src)
|
||||||
local hasJobFlag, duty = false, true
|
local hasJobFlag, duty = false, true
|
||||||
local playerInfo = GetPlayer(src)
|
local playerInfo = GetPlayer(src)
|
||||||
if not playerInfo then
|
local jobInfo, gangInfo = nil, nil
|
||||||
goto skip
|
if next(playerInfo) then
|
||||||
|
jobInfo = playerInfo.job
|
||||||
|
gangInfo = playerInfo.gang
|
||||||
|
if playerInfo.PlayerData then
|
||||||
|
jobInfo = playerInfo.PlayerData.job
|
||||||
|
gangInfo = playerInfo.PlayerData.gang
|
||||||
|
end
|
||||||
end
|
end
|
||||||
local jobinfo = playerInfo and playerInfo.job or playerInfo.PlayerData.job
|
if jobInfo and jobInfo.name == group then
|
||||||
if jobinfo and jobinfo.name == group then
|
|
||||||
hasJobFlag = true
|
hasJobFlag = true
|
||||||
duty = jobinfo.onduty
|
duty = jobInfo.onduty
|
||||||
if grade and not (grade <= jobinfo.grade.level) then
|
if grade and not (grade <= jobInfo.grade.level) then
|
||||||
hasJobFlag = false
|
hasJobFlag = false
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
local ganginfo = playerInfo and playerInfo.gang or playerInfo.PlayerData.gang
|
if gangInfo and gangInfo.name == group then
|
||||||
if ganginfo and ganginfo.name == group then
|
|
||||||
hasJobFlag = true
|
hasJobFlag = true
|
||||||
if grade and not (grade <= ganginfo.grade.level) then
|
if grade and not (grade <= gangInfo.grade.level) then
|
||||||
hasJobFlag = false
|
hasJobFlag = false
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
@@ -517,9 +524,6 @@ local hasGroupFunc = {
|
|||||||
function(group, grade, src)
|
function(group, grade, src)
|
||||||
local hasJobFlag, duty = false, true
|
local hasJobFlag, duty = false, true
|
||||||
local playerInfo = GetPlayer(src)
|
local playerInfo = GetPlayer(src)
|
||||||
if not playerInfo then
|
|
||||||
goto skip
|
|
||||||
end
|
|
||||||
local info = playerInfo and playerInfo.job
|
local info = playerInfo and playerInfo.job
|
||||||
while not info do
|
while not info do
|
||||||
info = GetPlayer(src).job
|
info = GetPlayer(src).job
|
||||||
@@ -528,7 +532,6 @@ local hasGroupFunc = {
|
|||||||
if info.name == group then
|
if info.name == group then
|
||||||
hasJobFlag = true
|
hasJobFlag = true
|
||||||
end
|
end
|
||||||
::skip::
|
|
||||||
return hasJobFlag, duty
|
return hasJobFlag, duty
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
@@ -538,25 +541,28 @@ local hasGroupFunc = {
|
|||||||
function(group, grade, src)
|
function(group, grade, src)
|
||||||
local hasJobFlag, duty = false, true
|
local hasJobFlag, duty = false, true
|
||||||
local playerInfo = GetPlayer(src)
|
local playerInfo = GetPlayer(src)
|
||||||
if not playerInfo then
|
local jobInfo, gangInfo = nil, nil
|
||||||
goto skip
|
if next(playerInfo) then
|
||||||
|
jobInfo = playerInfo.job
|
||||||
|
gangInfo = playerInfo.gang
|
||||||
|
if playerInfo.PlayerData then
|
||||||
|
jobInfo = playerInfo.PlayerData.job
|
||||||
|
gangInfo = playerInfo.PlayerData.gang
|
||||||
|
end
|
||||||
end
|
end
|
||||||
local jobinfo = playerInfo and playerInfo.job or playerInfo.PlayerData.job
|
if jobInfo and jobInfo.name == group then
|
||||||
if jobinfo and jobinfo.name == group then
|
|
||||||
hasJobFlag = true
|
hasJobFlag = true
|
||||||
duty = jobinfo.onduty
|
duty = jobInfo.onduty
|
||||||
if grade and not (grade <= jobinfo.grade.level) then
|
if grade and not (grade <= jobInfo.grade.level) then
|
||||||
hasJobFlag = false
|
hasJobFlag = false
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
local ganginfo = playerInfo and playerInfo.gang or playerInfo.PlayerData.gang
|
if gangInfo and gangInfo.name == group then
|
||||||
if ganginfo and ganginfo.name == group then
|
|
||||||
hasJobFlag = true
|
hasJobFlag = true
|
||||||
if grade and not (grade <= ganginfo.grade.level) then
|
if grade and not (grade <= gangInfo.grade.level) then
|
||||||
hasJobFlag = false
|
hasJobFlag = false
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
::skip::
|
|
||||||
return hasJobFlag, duty
|
return hasJobFlag, duty
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user