자유게시판

// 캐릭터의 스테이트를 정의 //
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 40548
막장 유튜브 뒤지다가.... 꺄하하하~ Alkaid 2012.08.05 551
막장 심심해서 넥 모사의 게임을 들어갔습니다. 3 Andromeda 2014.02.02 553
막장 아아아아아아카앜앙캉캌앙카!!!! 여치치닟ㄴ친친친ㅊ닟!!!!!! 8 동방의부족 2011.01.12 555
막장 토런드 저작권 2 내용없음 2011.01.20 556
막장 밤에 불끄고 보면 안되는 그림. 4 Alkaid 2011.02.01 556
막장 질답게 이미지 첨부용 글 3 현문 2010.10.29 557
막장 아 기말고사를 노리자 2 시옷전사 2010.10.22 558
막장 역자대기 위너프리드● 2011.01.18 559
막장 [윈도우 7]갓모드 1 스리아씨 2013.09.28 561
막장 「R의 의지」 13 file 2014.02.09 562
막장 만약에 올해의 Worst 작품을 뽑는다면 저는 무조건 이 게임에 투표합니다. 6 file 파치리스 2013.07.27 565
막장 역시 뭔가의 2차 창작 비스무리한 것...... 2 Alkaid 2012.08.08 566
막장 RPG VX ACE 깨알같은 오타 발견 2 file 스리아씨 2014.01.12 567
막장 공짜 게임(으익?) 1 Alkaid 2010.10.28 568
막장 관리자님 현문 2011.01.03 568
막장 미드나잇 블루의 스킬 데미지 계산식 스크립트 3 시트르산 2011.01.16 568
막장 페르시아의 왕자(Apple II용) 소스코드. Alkaid 2013.06.26 568
막장 [액알용] 4방향 이동 / 대쉬 플래그 코드 모음 2 시트르산 2010.11.29 569
막장 선인장으로 할 수 있는 일 4 하늘바라KSND 2011.01.22 569
막장 방송중입니다. 금목걸이 2013.12.27 570
목록
Board Pagination Prev 1 ... 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 ... 64 Next
/ 64