playXP

서브 메뉴

Page. 197 / 246 [내 메뉴에 추가]
글쓰기
작성자 만패
작성일 2011-11-01 00:07:50 KST 조회 725
제목
플레이어가 선택안한 영웅중에서 랜덤으로 영웅 선택..

1~4플레이어가 있고, 영웅이 4개 있는데요.. 대화상자로 영웅선택하게끔 만들었구..

 

어떤 플레이어가 어떤 영웅을 고르면 나머지 플레이어는 그 영웅을 고를 수 없게 대화상자 처리를 했어요..

 

게임시간 30초가 지나면 영웅이 생성되게 했구요..

 

근데 만약 플레이어1~4중에서 2명만 영웅을 선택하고, 2명은 영웅을 선택 안했다면

 

30초 후에 영웅선택안한 2명중에서 남은영웅 2개를 가지고 무작위로 선택해서 생성되게끔 만들고 싶은데..

 

어렵네요 ㅜ.ㅜ

 

어떤식으로 만들면 될까요......................? 매우어렵네요ㅜ.ㅜ

지속적인 허위 신고시 신고자가 제재를 받을 수 있습니다.
신고 사유를 입력하십시오:

발도장 찍기
qwert (2011-11-02 02:09:43 KST) - 147.47.xxx.166
0↑ ↓0
센스 이미지를 등록해 주세요
트리거에 대한 기본적인 사항은 알고 계시리라 믿고 답변드립니다.
이미 누군가에 의해 선택된 영웅을 중복선택하지 못하게 하는 트리거를 만드셨다면 더욱 쉽습니다.

여러가지 방법이 있겠지만 추후에 영웅수가 더 늘어날 것을 고려하면 아마 부울값으로 각각의 배열 index에 영웅을 하나씩 배정하고, 특정 영웅이 선택되면 그 영웅이 배정된 배열 index 의 부울 값을 참 혹은 거짓으로 바꿔 중복 선택이 불가능하게 만드셨을 겁니다.

이번에는, 필요한 재료가 다음과 같습니다.
1. 이 플레이어가 이미 영웅을 선택했는가? 를 알 수 있는 변수.
2. 이 영웅이 이미 선택돼 있는가? 를 알 수 있는 변수.

2 번은 이미 만드신거고 1번만 새로 만들어 주시면 됩니다.
그럼, for 문을 돌리면서 현재 플레이어 i 가 이미 영웅을 선택했는지 확인해주시고, 선택했다면 통과, 그렇지 않다면 아래의 내용을 진행하면 됩니다.

아까 영웅을 0~n 까지 임의의 정수에 배정하셨을텐데, '무작위 정수' 라는 행동이 있습니다. while 문을 무한루프로 설정해 두고 '무작위 정수' 함수를 이용해서 0~n 사이의 무작위 정수를 부르면 됩니다.

만약 광전사 영웅을 0 번에 배정했는데, 무작위 정수로 0 이 나왔다면 그 다음으로 확인할 것은 이 영웅이 이미 선택되었는가죠. 이는 2번에서 이미 만들어 두었기 때문에 이를 비교하시면 됩니다. 만약 선택 돼 있다면?

while 문은 계속 돕니다. 선택이 안 된 영웅이 골라지기까지요.
어느 순간 선택이 안 된 해병 영웅이 배정된 3이 나온다면 이 때 해병 영웅을 생성키기고 '중단' 행동으로 while 문을 종료시키면 됩니다.

변수배정 외의 방법도 있지만 굳이 다른 방법을 쓰지 않고 저 방법만으로도 충분히 원하는 효과를 볼 수 있을것입니다.
아이콘 만패 (2011-11-03 19:15:06 KST)
0↑ ↓0
센스 이미지를 등록해 주세요
감사해용ㅇㅎ
댓글을 등록하려면 로그인 하셔야 합니다. 로그인 하시려면 [여기]를 클릭하십시오.
롤토체스 TFT - 롤체지지 LoLCHESS.GG
소환사의 협곡부터 칼바람, 우르프까지 - 포로지지 PORO.GG
배그 전적검색은 닥지지(DAK.GG)에서 가능합니다
  • (주)플레이엑스피
  • 대표: 윤석재
  • 사업자등록번호: 406-86-00726

© PlayXP Inc. All Rights Reserved.