채팅0

    점언 스크립트

    조회수 587

    점언 지울려고하는데 이것만 지우면되지?


    zz_y7.fly_dupe = function(mob)

    local hitByLeft = false

    local knockbackType = 1

    local kb = mob.MobKnockbackComponent

    local ai = mob.MobAIComponent

    local rb = mob.MobRigidbodyComponent

    local map = mob.CurrentMap
    local boundLt, boundRb = map.MapComponent:GetBound()
    local minX = boundLt.x + 0.1
    local maxX = boundRb.x - 0.1
    local mobPos = mob.TransformComponent.WorldPosition:ToVector2()
    local sqrt = math.sqrt
    
    local elapse = 0
    local knockbackMoveEnd
    local interruptedEnd
    if (knockbackType == 2) then 
    	knockbackMoveEnd = 0.5	
    	interruptedEnd = 0.7 
    else 
    	knockbackMoveEnd = 0.1
    	interruptedEnd = 0.5
    end
    
    local timelines = {}
    local timelineIndex = 0
    local currentX = mobPos.x
    local currentY = mobPos.y
    
    local function makeDistance(x1, y1, x2, y2)
    	return sqrt((x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1))
    end
    
    kb:SetShoeAttr(knockbackType)
    local knockbackSpeed = rb.WalkSpeed * _Physics.FlySpeed / 1
    
    ---@param destX number
    ---@param destY number
    ---@param floating boolean
    ---@return number
    local function makeFlyCommand(cmd, destX, destY, floating)
    	local distance = makeDistance(currentX, currentY, destX, destY) 
    	currentX = destX
    	currentY = destY
    	local duration = distance / knockbackSpeed
    	timelines[timelineIndex + 1] = {cmd, {destX, destY, duration, floating}, 0}
    	timelineIndex += 1
    	return duration
    end
    local function makeCommand(cmd, value, nextTime)
    	timelines[timelineIndex + 1] = {cmd, value, nextTime}
    	timelineIndex += 1
    end
    
    local inputX = 1
    if (hitByLeft) then
    	inputX = -1
    end
    
    -- makeCommand(_MobActionPartType.HitMotion, 1, 0)
    
    local knockbackDestX = mobPos.x
    local delta = knockbackSpeed * knockbackMoveEnd
    if (inputX < 0) then
    	knockbackDestX = math.max(minX, mobPos.x - delta)
    else
    	knockbackDestX = math.min(maxX, _UserService.LocalPlayer.TransformComponent.WorldPosition.x + 0.8)
    end
    
    if (mobPos.x ~= knockbackDestX) then
    	mobPos.y += 0.02
    	-- makeCommand(_MobActionPartType.KnockbackPos, mobPos, 0)
    	makeFlyCommand(_MobActionPartType.KnockbackFly, knockbackDestX, _UserService.LocalPlayer.TransformComponent.WorldPosition.y , false)
    end
    
    -- makeCommand(_MobActionPartType.HitMotion, 0, interruptedEnd)
    
    if (timelineIndex > 0) then
    	map.LifeControllerComponent:RequestControl(mob, timelines, timelineIndex, true)
    end

    end

    zz_y7.jump_dupe = function(mob)

    local ai = mob.MobAIComponent

    local kb = mob.MobKnockbackComponent

    local rb = mob.MobRigidbodyComponent

    if (not isvalid(rb)) then

    if (isvalid(ai)) then

    -- ai:EnableNextControlTimer(0.1)

    end

    return

    end

    if (not mob.Visible) then

    -- ai:EnableNextControlTimer(0.1)

    return

    end

    local fh = rb.LastFoothold

    if (fh == 0) then

    --log("last foothold is 0")

    -- ai:EnableNextControlTimer(0.1)

    return

    end

    local now = _UtilLogic.ServerElapsedSeconds
    -- if (now < ai.NextActionTime) then
    -- 	-- ai:EnableNextControlTimer(math.max(ai.NextActionTime - now, 0) + 0.1)
    -- 	return
    -- end
    
    local target = _UserService.LocalPlayer
    local nextAction = 0
    local newInputX = nil
    local mobX = mob.TransformComponent.WorldPosition.x
    if (isvalid(target) and ai.LocalUnchaseTick < 7) then
    	if (ai.AttackWasLast) then
    		nextAction = _GlobalRand32:RandomIntegerRange(100, 110) / 1000
    		ai.AttackWasLast = false
    	else
    		nextAction = _GlobalRand32:RandomIntegerRange(100, 110) / 1000
    	end
    	local targetX = target.TransformComponent.WorldPosition.x
    	if math.abs(targetX - mobX) > 6 then
         if targetX > mobX then
            -- newInputX = 3
            newInputX = 3
         else
            -- newInputX = -3
            newInputX = -3
         end
      else
         newInputX = math.max(targetX - mobX + 1.2, -3)
      end

    else

    nextAction = (_GlobalRand32:RandomIntegerRange(200, 210) / 1000)

    newInputX = _UserService.LocalPlayer.TransformComponent.WorldPosition.x - mobX + 1.2

    end

    local platforms = mob.CurrentMap.PlatformInfoComponent
    local timelines = {}
    local timelineIndex = 0
    --log("platform left x (fh=%d)", platform.left.x, platform.left.foothold.Id)
    --log("platform right x (fh=%d)", platform.right.x, platform.right.foothold.Id)
    local lastTimeline = 0
    -- local playerFh = _UserService.LocalPlayer.WsUserController.LastFoothold
    -- if (playerFh == 0 or platforms.ZMass[playerFh] ~= ai.LocalStartChaseZMass) then
    -- 	ai.LocalUnchaseTick += 1
    -- 	ai:IncUnTick()
    -- end
    
    local function makeCommand(cmd, value, timeline, nextActionTime)
    	timelines[timelineIndex + 1] = {cmd, value, timeline - lastTimeline, nextActionTime}
    	timelineIndex += 1
    	lastTimeline = timeline
    end
    
    
    local targetX = _UserService.LocalPlayer.TransformComponent.WorldPosition.x
    local targetY = _UserService.LocalPlayer.TransformComponent.WorldPosition.y
    local mobY = mob.TransformComponent.WorldPosition.y
    local gapX = math.abs(mobX - targetX)
    local gapY = math.abs(mobY - targetY)
    if gapX > 3 then
    	makeCommand(_MobActionPartType.Move, newInputX, 0, nextAction)
    	makeCommand(_MobActionPartType.Jump, 0, 0)
    elseif gapY > 1.5 then
    	makeCommand(_MobActionPartType.Move, newInputX, 0, nextAction)
    	makeCommand(_MobActionPartType.Jump, -1, 0)
    elseif gapX < 0.3 and targetX < mobX then
    	makeCommand(_MobActionPartType.Move, 0, 0, nextAction)
    else
    	makeCommand(_MobActionPartType.Move, newInputX, 0, nextAction)
    end
    
    
    kb:SetShoeAttr(0)
    
    if (timelineIndex > 0) then
    	mob.CurrentMap.LifeControllerComponent:RequestControl(mob, timelines, timelineIndex, false)
    end

    end


    end


    여기서 마지막

    end

    end


    end


    이거빼고 다 지우면 되지?

    댓글10

    회원프로필

    한번만 봐주면 고마워.. 점언켜질까봐 무섭다

    2024.02.27 01:19
    회원프로필

    뭘 지워야되는지 모르겠는데 이렇게 지우면될까 형들?

    2024.02.27 01:22
    회원프로필

    해당 함수를 지웠으면 함수를 호출하는 부분도 지워야지.

    2024.02.27 01:22
    회원프로필

    호출하는곳은 어디있어?

    2024.02.27 01:23
    회원프로필

    너가 쓴 본문에 나와있어.
    함수 이름을 검색해봐 그럼 호출하는 부분이 보인다

    2024.02.27 01:25
    회원프로필

    초보라서 모르겠다.. 혹시나 점언켜질까봐 무서워서 ㅠㅠ

    2024.02.27 01:28
    회원프로필

    이해 못하면 아애 못해 그냥 키 안누르게 잘 하렴

    2024.02.27 01:29
    회원프로필

    elseif(KeyboardKey.F2 == key)then 이건 건들면안되지?

    2024.02.27 01:37
    회원프로필

    그것도 다 지워 핫키인데 실수로 누를 일 없어지잖아 그럼

    2024.02.27 07:53
    회원프로필

    도움 한번만 주시면 감사하겠습니다..

    2024.02.27 01:37

      게시글 리스트
      제목작성자작성일조회
      4460802-27442
      4460702-27590
      4460602-27232
      4460502-27270
      4460402-27437
      4460302-27211
      4460202-27175
      4460102-27588
      4460002-27702
      4459902-27298
      4459802-27232
      4459702-27221
      4459602-27461
      4459502-27495
      4459402-27124
      4459302-27123
      4459202-27216
      4459102-27151
      4459002-27325
      4458902-27154