자유게시판

// 캐릭터의 스테이트를 정의 //
void Char_State(Base_Character &chara)
{
 if (!chara.isJumpEnd);
 else if (KEY_DOWN(VK_SPACE)) // 스페이스 키 : 점프
 { chara.state = JUMP;   
  if (KEY_DOWN(VK_RIGHT)) chara.state = JUMP_RIGHT;  // 동시에 눌린 경우 : 우방점프
  else if (KEY_DOWN(VK_LEFT)) chara.state = JUMP_LEFT; // 동시에 눌린 경우 : 좌방점프
  Last_Frame_Jump = Frame; chara.isJumpEnd = false;} //점프 시도한 프레임을 저장.(lastframejump)
 else if (KEY_DOWN(VK_RIGHT)) // 오른쪽 화살표 키
 { chara.state = MOVE_RIGHT; chara.Way_4 = MOVE_RIGHT;
  if (chara.isMoveRightEnd) { chara.isMoveRightEnd = false; if (!chara.isDash) chara.Last_Frame_Move_RIGHT = Frame; }
  if (KEY_DOWN(VK_SPACE))  chara.state = JUMP_RIGHT;}
 else if (KEY_DOWN(VK_LEFT) )  // 왼쪽 화살표 키
 { chara.state = MOVE_LEFT; chara.Way_4 = MOVE_LEFT;
  if (chara.isMoveLeftEnd) { chara.isMoveLeftEnd = false; if (!chara.isDash)  chara.Last_Frame_Move_LEFT = Frame; }
  if (KEY_DOWN(VK_SPACE))  chara.state = JUMP_LEFT; }
 else { chara.state = NONE; chara.isDashEnd = true; chara.isMoveRightEnd = true; chara.isMoveLeftEnd = true; }// chara.Speed = 3;
 
 // 대쉬시 스피드. 수정요망 //
 if (!chara.isDashEnd) chara.Speed = 5; else chara.Speed = 2;
 
 // 대쉬플래그 세우기 (우로) : 한번 우키 입력 / 끊김 / 20프레임내 다시 입력 //
 if (chara.Last_Frame_Move_RIGHT > 0) // 만약 라스트 프레임이 0보다 크다면!
 { if (Frame - chara.Last_Frame_Move_RIGHT >= 1 && Frame - chara.Last_Frame_Move_RIGHT <= 6) 
  if (!KEY_DOWN(VK_RIGHT)) //만약 프레임차이가 20보다 작을때 오른쪽 키가 안눌려졌다
  chara.isDash = true;  //그러면 대쉬 플래그가 선다 
  if (chara.isDash)   // 안눌려진 후 12프레임 안에 다시 눌렸을때 그리고 다시 안눌렸을때 플래그 조절
  { if (Frame - chara.Last_Frame_Move_RIGHT <=12) 
  { if (KEY_DOWN(VK_RIGHT)) { chara.isDashEnd = false; chara.isDash = false; chara.Last_Frame_Move_RIGHT = 0;} }
   else {chara.isDash = false; chara.isDashEnd = true; chara.Last_Frame_Move_RIGHT = 0;} }
 }

 // 대쉬플래그 세우기 (좌로) : 한번 좌키 입력 / 끊김 / 20프레임내 다시 입력 //
 if (chara.Last_Frame_Move_LEFT > 0) // 만약 라스트 프레임이 0보다 크다면!
 { if (Frame - chara.Last_Frame_Move_LEFT >= 1 && Frame - chara.Last_Frame_Move_LEFT <= 6) 
  if (!KEY_DOWN(VK_LEFT)) //만약 프레임차이가 20보다 작을때 오른쪽 키가 안눌려졌다
  chara.isDash = true;  //그러면 대쉬 플래그가 선다 
  if (chara.isDash)   // 안눌려진 후 12프레임 안에 다시 눌렸을때 그리고 다시 안눌렸을때 플래그 조절
  { if (Frame - chara.Last_Frame_Move_LEFT <=12) 
  { if (KEY_DOWN(VK_LEFT)) { chara.isDashEnd = false; chara.isDash = false; chara.Last_Frame_Move_LEFT = 0;} }
   else {chara.isDash = false; chara.isDashEnd = true; chara.Last_Frame_Move_LEFT = 0;} }
 }
}

 

 

// 캐릭터 초기화 //
void Init_Char(Base_Character &chara)
{
   chara.positionX = 0;  chara.positionY = 0; chara.Speed = 2;   chara.isCols = false;
   chara.Large_X = 23;  chara.Large_Y = 32; chara.Way_4 = MOVE_RIGHT; chara.state = NONE;
   chara.isMove = false; chara.isDash = false; chara.isJumpEnd = true;  chara.isMoveRightEnd = true;
   chara.isMoveLeftEnd = true;     chara.isDashEnd = true;
   chara.STREN = 5;   chara.INDUR = 4;  chara.VITAL = 5;  chara.LEVEL = 1;
   chara.EXP = 0;   chara.HP = 100;  chara.MP = 50;
   chara.ATK = chara.STREN*10; chara.DEF = chara.INDUR*10; chara.SPI = 10;
   chara.Last_Frame_Move_LEFT = 0; chara.Last_Frame_Move_LEFT = 0;
}

// 무기에 대한 정보 //
void Init_Weapon(Base_Weapon &weapon)
{
 weapon.Attack_Range_X = 0; weapon.isSwing = 0; weapon.positionX = 0; weapon.positionY = 0;
 weapon.Speed = 0;   weapon.state   = 0;
}

// 적에 대한 정보 //
void Init_Enemy(Base_Enemy &enem) // 적1
{
   enem.positionX = (VGfloat)Full_Screen_X-300;  enem.positionY = 0; enem.Speed = 2;    enem.isCols = false;
   enem.Large_X = 23;  enem.Large_Y = 32;  enem.Way_4 = MOVE_RIGHT; enem.state = NONE;
   enem.isMove = false;  enem.isDash = false; enem.isJumpEnd = true;  enem.isDmgdEnd = true;
   enem.STREN = 5;   enem.INDUR = 4;  enem.VITAL = 5;  enem.LEVEL = 1;
   enem.EXP = 0;   enem.HP = 100;   enem.MP = 50;
   enem.ATK = enem.STREN*10; enem.DEF = enem.INDUR*10; enem.SPI = 10;
}

void Init_Enemy_2(Base_Enemy &enem) // 적2
{
   enem.positionX = (VGfloat)Full_Screen_X-220;  enem.positionY = 0; enem.Speed = 2;    enem.isCols = false;
   enem.Large_X = 23;  enem.Large_Y = 32;  enem.Way_4 = MOVE_RIGHT; enem.state = NONE;
   enem.isMove = false;  enem.isDash = false; enem.isJumpEnd = true;  enem.isDmgdEnd = true;
   enem.STREN = 5;   enem.INDUR = 4;  enem.VITAL = 5;  enem.LEVEL = 1;
   enem.EXP = 0;   enem.HP = 100;   enem.MP = 50;
   enem.ATK = enem.STREN*10; enem.DEF = enem.INDUR*10; enem.SPI = 10;
}

// 충돌체크 //
bool Check_Cols_Fscreen(Base_Character &chara) // 전체화면 충돌 체크
{ if (chara.positionX > Full_Screen_X-50) {chara.isCols = true;}
 else if (chara.positionX < 0)   {chara.isCols = true;}
 return chara.isCols;
}
// 충돌 체크 //
VGfloat  Cols_Fscreen_Solve(VGfloat positionX, bool isCols)
{ return positionX; }

 

Who's 시트르산

?

제작중인 게임 :

Midnight Blue  (미드나잇 블루) - RPGXP

 공동제작 : 휘파람개비님

 시스템 : 45%, 스토리 : 10%, 맵 : 3%, 제작 : 1%

 CG : 2%         총 진행도 : 3%

 

 이번 게임은 공동제작인 만큼 최선을 다하겠습니다 ^^

기다려주세요~~

Comment '2'
  • profile
    하늘바라KSND 2010.11.29 23:19

    이런건 강좌에 올리시는게 어떠실런지...

  • profile
    we0 2010.11.30 16:01

    정말 유용하군요.

    이것의 장점은

    아방스의 사용법을 모르고 막게라는 곳의 도착한 초보자들한테는 유용하네요.

    단점

    너무 흔하ㄷ..<=퍽 열심히 노력한분에게 이게 무슨 말버릇이야!

     


List of Articles
분류 제목 글쓴이 날짜 조회 수
공지 아방스 게시물 · 댓글 작성 규칙 (최근 수정일 2015.11.25) 17 file 완폐남™ 2012.07.17 41184
잡담 ! 7 §포뇨§ 2010.02.27 382
잡담 !! 1 은색바람 2011.10.21 1111
가입 !! 2 엡스타인 2016.03.05 96
잡담 !!! 7 포뇨 2010.04.18 453
잡담 !~엘카르디아 축전~! 7 봉시기 2010.11.04 507
막장 " 간보지마세요 제가 음식입니까? " 7 JACKY 2014.01.31 467
"ICON2008" (국제콘텐츠개발자컨퍼런스) Mgame의 "풍림화산" 제작진과 무라타렌지 등 국내외 유명 콘텐츠 개발자가 9월에 부산에 옵니다^^ mi41 2008.07.24 1411
잡담 "Mania의 (10년째) 게임제작 인생 연표" * 스크롤 압박 주의 10 Director 2010.09.09 3524
잡담 "N"자가 또 사라졌네.. 2 나방's 2011.02.13 512
"ㅆ" 이거 스태미나 감추려면 어찌;; 2 라이네크 2009.09.29 875
잡담 "게임을 빼느니 차라리 마약을 빼겠다" 10 Omegaroid 2014.02.17 925
잡담 "게임의 플롯은 과대평가되고 있다"? 23 Omegaroid 2014.03.19 784
막장 "게임중독법, 난 찬성일세"…12만명 서명 7 파치리스 2014.02.09 629
잡담 "떽" 은 아직 살아 움직이고 있다! 6 TheEK 2013.05.03 1029
잡담 "몽니 나를 떠나가던" 방송3사 및 케이블 방송불가 판정!! 뮤비 확인!! 3 화양연화 2010.06.22 772
잡담 "배포"가 아방스 홈피에 온이유! 2 배포 2008.03.02 1029
잡담 "여기 재밌는 겜은 뭐가 있나요?" 6 sudoxe 2014.01.27 544
잡담 "오덕후" 라는 이슈에 대해서 다시 한 번 정리 해드립니다. 10 TheEK 2012.07.04 963
"우리가 왜 자네를 뽑았는지 아나?" 4 파치리스 2013.05.31 1294
잡담 "제생일을맞춰보세요" 이벤트결과 12 포효 2010.04.16 464
목록
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 ... 755 Next
/ 755