MSW메이플월드 9

메이플월드 넉백식 맵 제작(3)

움직이는 발판 발판에 새로운 컴포넌트를 추가하고 해당 위치에 도달할 때 까지 움직이도록 한다. 그리고 현재 맵에 새로운 컴포넌트를 생성해 6초에 한번씩 발판을 만들도록 한다. 대포 대포에 새로운 컴포넌트를 추가한다. OnUpdate에서 틱마다 -x방향으로 이동하도록 한다 또 플레이어에 닿았을 때 플레이어의 상태를 JUMP로 바꾸어 밧줄에 매달려 있을 때 떨어지도록 하고 SetForce()로 뒤로 밀려나도록 한다. 맵에 새로운 컴포넌트를 추가한다 bool변수를 랜덤으로 돌리고 1이 나올 시 해당 칸에 대포 소환 2일 경우 pass한다 미리 지정해준 대포의 위치를 따와 그 위치에 Spawn해준다.

MSW메이플월드 2022.12.26

메이플월드 넉백식 맵 제작(2)

떨어지는 장애물 0.5초마다 x좌표 28~55사이에 장애물 모델을 생성한다. 떨어지는 장애물에도 새로운 컴포넌트를 추가해주고 생성되고 3초 동안 기다리고 3초 뒤에 canhit 변수를 true로 바꿔줘서 닿았을 때 튕겨나도록 한다. 그리고 0.8초 뒤에 자신을 삭제한다. 가속포탈 새로운 컴포넌트를 추가해준다. 캐릭터와 닿았을 때 캐릭터의 속도와 점프 크기를 높여준다.

MSW메이플월드 2022.12.26

메이플월드 넉백식 맵 제작(1)

이동하는 발판의 경우 CustomFootholdComponent에서 FootholdForce의 값을 1로 설정한다. 반대의 경우 -1로 설정하면 된다 해당 돌아가는 넉벡 장애물의 경우 가운데 풍차모양을 중심으로 자쿰 팔들을 배치한다. 가운데 풍차에 새로운 컴포넌트를 추가해주고 다음과 같이 코드를 짜준다 Onupdate로 매 틱마다 WorldZRotation의 값을 변경해준다. 자쿰팔의 컴포넌트는 다음과 같다. 플레이어 에 닿았을 때 X축으로 -5, Y축으로 5만큼 힘을 주어 튕겨나가도록 한다. 체크포인트 게임이 시작하거나 떨어졌을 때 캐릭터가 스폰되는 SpawnLocation이다. 여기에 새로운 컴포넌트를 추가해준다. 각 플레이어마다 중간지점이 다르므로 client only로 OnUpdate를 처리한다...

MSW메이플월드 2022.12.26

메이플월드 템플런식 맵 제작 - 보스이동 및 캐릭터 이동

캐릭터 층 이동 해당 컴포넌트를 DefaultPlayer안에 넣어준다. 조건들을 처리해서 위/아래로 이동 가능한 위치일 경우 위 키를 누르면 위 층으로 teleport시켜 이동 아래 키를 누르면 아래 층으로 teleport시켜 이동 시켜준다. _TeleportService:ReserveTeleportToMapPosition(1,2,3) 함수의 인자는 1:teleport시킬 객체 2:텔레포트 시킬 위치 3:텔레포트 맵의 이름 위 함수로 텔레포트 예약을 했다면 _TeleportService:TeleportReservedEntities() 를 통해 예약된 텔레포트를 실행한다. 보스의 이동 및 트리거 처리 보스에 해당 컴포넌트를 추가해 오른쪽으로 이동하게 한다. 그리고 해당 아우라를 추가하여 이 아우라에 닿을 ..

MSW메이플월드 2022.12.26

메이플월드 템플런식 맵 제작 2. 보스몬스터 패턴 소환(2)

2.Wind wind의 컴포넌트는 다음과 같다. Onupdate에서 틱마다 오른쪽으로 이동한다. 그리고 TriggerEnter 이벤트를 통해 플레이어가 회오리에 닿았을 시 뒤로 10만큼 밀려나도록 SetForce로 처리해주었다. 3.BlackWind BlackWind에는 2가지 컴포넌트를 추가하였다. https://mun-coding.tistory.com/144 메이플월드 템플런식 맵 제작 2. 보스몬스터 패턴 소환(1) 먼저 현재 맵에 새로운 컴포넌트를 추가해준다. 그리고 프로퍼티를 다음과 같이 추가한다. magnus는 보스 캐릭터를 받아온다 smashPos는 날아오는 검기의 위치를 가져온다. windpos는 날아오는 회오리 mun-coding.tistory.com 먼저 BlackWind는 위에 소환하..

MSW메이플월드 2022.12.26

메이플월드 템플런식 맵 제작 2. 보스몬스터 패턴 소환(1)

먼저 현재 맵에 새로운 컴포넌트를 추가해준다. 그리고 프로퍼티를 다음과 같이 추가한다. magnus는 보스 캐릭터를 받아온다 smashPos는 날아오는 검기의 위치를 가져온다. windpos는 날아오는 회오리의 위치를 가져온다. beginplay함수에서 맵이 시작될 때 math.randomseed(os.time())으로 랜덤성을 한번 초기화 해주고 아래 날아오는 공격들의 위치를 초기화 해준다. smashpos[1]은 1층으로 검기가 날아올 때 y위치를 초기화 해준것이다. windPos는 y축으로 2층을 잡아먹기 때문에 1층과 2층 위치만을 초기화해주었다. onupdate함수는 다음과 같다. 매그너스의 패턴이 발동 될 시 해당 폼이 true이면 _SpawnService:SpawnByModelId 를 통해 ..

MSW메이플월드 2022.12.26

메이플월드 템플런식 맵 제작 1. 보스몬스터 애니메이션

먼저 보스몬스터에 들어갈 컴포넌트 프로퍼티들이다. timecount : time(시간)이 timecount만큼 지났을 때 폼을 바꿔준다. OnUpdate함수는 다음과 같으며 1~4까지 숫자를 랜덤으로 돌려 나온 숫자에 맞춰 폼을 바꿔주어 애니메이션을 실행한다. 각 함수들을 다음과 같이 설정하면 5초마다 애니메이션 클립을 실행하고 각 폼의 시간이 지날 때 마다 원래 폼으로 돌아온다.

MSW메이플월드 2022.11.17

메이플월드 - 미니게임 랜덤 배치

맵 이동의 순서도는 다음과 같다. 먼저 MatchLogic이다 이는 게임 전체에 적용되는 코드이다. MatchLogic은 기본 라이브러리에서 가져왔고 이 함수를 펼친뒤 이 부분에 인자로 이동하고 싶은 첫 번째 인스턴스맵의 이름을 넣으면 된다. 이렇게 되면 게임 시작 후 플레이 버튼을 눌렀을 때 waitingMap으로 이동하게 될 것이다. waitingMapRandom 이 컴포넌트는 waitingMap에 들어가며 다음에 있을 미니게임들에 랜덤성을 부여한다. count : 앞으로 있을 미니게임맵의 인덱스 check : 랜덤에서 나온 숫자를 확인하기 위한 변수 이미 나온 숫자면 true 안나온 숫자면 false mapname : 맵 이름이 담겨있는 배열 먼저 게임이 시작되면 모든 check를 false로 해주..

MSW메이플월드 2022.11.17