본문내용
\'사다리를 확인하는 점의 출발 Y 좌표(선의 시작점)
Xpoint = stepwidth * Index + 250 \'점의 출발 X좌표(이름의 중앙)
\'점을 찍어 가다가 벌금 레이블 위(선의 끝)에서 멈춘다.
Do Until Ypoint >= 7600
DoEvents \'무한 반복의 종료
\'방향값을 조사하여
Select Case direction
\'아래로 진행을 시작한다면.
Case \"down\"
\'점의 간격 조정. 숫자가 클수록 빨리 진행한다.
\'사용가능한 숫자는 가로선의 위치(200마다)마다 확인 가능한 숫자로
Ypoint = Ypoint + 100 \'(200 mod 숫자= 0)이 되어야 된다.
\'가로줄의 그어져 있는 위치에 왔다면 ,즉 나머지가 0 이라면
If Ypoint Mod 200 = 0 Then
\'point(x,y)=qbcolor(15)에서 이 메서드는 좌표가 x,y인 점의
\'qbcolor색상을 구한다.point 메소드는 점의 색상을 구해준다
\'왼쪽으로 100 픽셀 이동하여 색상(가로선)이 있으면
\'즉 바탕색(흰색)이 아니라면
If Point(Xpoint - 100, Ypoint) <> vbWhite Then
direction = \"left\" \'왼쪽으로 이동하고
\'오른쪽의 점에 색상이 있으면(선이 그어져 있으면)
ElseIf Point(Xpoint + 100, Ypoint) <> vbWhite Then
direction = \"right\" \'오른쪽으로 이동하라
End If
End If
\'만약 오른쪽으로 진행하게 되면
Case \"right\"
\'점의 간격 조정을 빠르게하고 싶으면
Xpoint = Xpoint + 5 \'예를 들어서 5 트윕 마다 점을 찍고 싶으면
\'어떤 사람인지 사람수 마다 조사하고
For i = 0 To PersonCount - 1
\'빠르게 하려면 For Loop의 5번의 반복 조사가 필요하다.
For j = 0 To 4 \'점 1,2, 3, 4 , 5의 위치에서 모두 조사
\'한블럭 오른쪽에 도착하면, j의 값은 0과 4사이의 값
If stepwidth * i + 250 + j = Xpoint Then
direction = \"down\" \'무조건 아래로 진행하고
\'새로운 출발 위치는 한 블럭 오른쪽 정위치이다.
Xpoint = stepwidth * i + 250
End If
Next j
Next i
\'만약 왼쪽으로 진행하게 되면
Case \"left\"
\'점의 간격 조정을 느리게, 예를 들어 1로 하면
Xpoint = Xpoint - 1
\'어떤 사람인지 사람수만큼 역순으로 조사한다.
For i = PersonCount - 1 To 0 Step -1
\'1 일때는 For Loop가 필요없다. 2이상 부터 필요
\'한블럭 왼쪽에 도착하면
If stepwidth * i + 250 = Xpoint Then
direction = \"down\" \'무조건 아래로 이동하고
\'새로운 출발 위치는 자동으로 한블럭 왼쪽 정위치가 된다.
End If
Next i
End Select
\'해당 색상별로 점을 찍는다.PSet메서드는 점을 찍는다.
PSet (Xpoint, Ypoint), QBColor(PointColor)
Loop
\'사람과 금액을 MessageBox로 출력
MsgBox Irum(Index) + \" : \" + Str(Money(Int(Xpoint / stepwidth)))
\'금액 밑에 사람의 이름 표시
lblnameok(Int(Xpoint / stepwidth)).Caption = Irum(Index)
\'시작버튼은 사용 불가 상태로 한다.
cmdStart(Index).Visible = False
End Sub
\'되돌아 가기
Private Sub cmdReturn_Click()
Unload Me
frmstart.Show
\'바로 시작버튼을 클릭하면 에러가 발생한다.
frmstart.cmdBegin.Enabled = False
End Sub
\'종료 하기
Private Sub Cmdstop_Click()
End
End Sub
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
project1 - basLadder
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Public PersonCount As Integer \' 사람수를 간직하는 변수
Public Money(12) As Integer \' 임의로 선택된 금액을 저장하는 배열
Public Irum(12) As String \' Text박스에 입력된 이름을 순서대로 배열에 저장
Public stepwidth As Integer \'사다리 세로줄의 간격
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
게임방법 & 실행화면
게임을 실행했을 때 나오는 첫 화면이다.
우선 벌금 조전 Frame에서 조정하고 싶은 등수 OptionButton을 클릭 하면 이런 메시지 창이 뜨게 된다.
그럼 여기서 금액을 정한후 확인하게 되면
원하는등수의 벌금이 바뀌게된다.
그러면 이런 화면이 되게된다.
저기 벌금과 인원 Frame 에 금액이 바뀌어있는게 보인다.
나머지 등수도 금액을 바꾸고 인원을 조절한다.
벌금 조절과 인원조절을 한 모습이다.
그리고 선수명단 Frame에 이름을 A, B, C, D, E, F, G, H, I, J, K, L 로 지정해 놓은 화면이다.
이제 사다리를 타보자!
위에 파란색 시작 버튼을 클릭!!!
이렇게 색깔이 다르게 뚜꺼운 줄로 바뀌면서 사다리를 타기 시작한다.
해결하지 못한 점
이 레포트를 작성하면서 알아낸 버그인데 벌금의 단위를 만 단위 이상씩 설정하고 사다리타기를 하면 버그가 생겨 게임이 실행이 안된다는 것을 알게되었다.
이것을 해결하려면 어떻게 해야 할지 그것은 아직 나의 실력으론 파악을 하지 못하였다.
출처 : http://www.howtobank.net/vbboard/zboard.php?id=news
컴퓨터 프로그래밍
R E P O R T
* 간단한 게임 소스분석
과 목 명:
컴퓨터 프로그래밍
학 과:
학 번:
이 름:
제 출 일:
년 월 일 (월)
담당교수:
교수님
Xpoint = stepwidth * Index + 250 \'점의 출발 X좌표(이름의 중앙)
\'점을 찍어 가다가 벌금 레이블 위(선의 끝)에서 멈춘다.
Do Until Ypoint >= 7600
DoEvents \'무한 반복의 종료
\'방향값을 조사하여
Select Case direction
\'아래로 진행을 시작한다면.
Case \"down\"
\'점의 간격 조정. 숫자가 클수록 빨리 진행한다.
\'사용가능한 숫자는 가로선의 위치(200마다)마다 확인 가능한 숫자로
Ypoint = Ypoint + 100 \'(200 mod 숫자= 0)이 되어야 된다.
\'가로줄의 그어져 있는 위치에 왔다면 ,즉 나머지가 0 이라면
If Ypoint Mod 200 = 0 Then
\'point(x,y)=qbcolor(15)에서 이 메서드는 좌표가 x,y인 점의
\'qbcolor색상을 구한다.point 메소드는 점의 색상을 구해준다
\'왼쪽으로 100 픽셀 이동하여 색상(가로선)이 있으면
\'즉 바탕색(흰색)이 아니라면
If Point(Xpoint - 100, Ypoint) <> vbWhite Then
direction = \"left\" \'왼쪽으로 이동하고
\'오른쪽의 점에 색상이 있으면(선이 그어져 있으면)
ElseIf Point(Xpoint + 100, Ypoint) <> vbWhite Then
direction = \"right\" \'오른쪽으로 이동하라
End If
End If
\'만약 오른쪽으로 진행하게 되면
Case \"right\"
\'점의 간격 조정을 빠르게하고 싶으면
Xpoint = Xpoint + 5 \'예를 들어서 5 트윕 마다 점을 찍고 싶으면
\'어떤 사람인지 사람수 마다 조사하고
For i = 0 To PersonCount - 1
\'빠르게 하려면 For Loop의 5번의 반복 조사가 필요하다.
For j = 0 To 4 \'점 1,2, 3, 4 , 5의 위치에서 모두 조사
\'한블럭 오른쪽에 도착하면, j의 값은 0과 4사이의 값
If stepwidth * i + 250 + j = Xpoint Then
direction = \"down\" \'무조건 아래로 진행하고
\'새로운 출발 위치는 한 블럭 오른쪽 정위치이다.
Xpoint = stepwidth * i + 250
End If
Next j
Next i
\'만약 왼쪽으로 진행하게 되면
Case \"left\"
\'점의 간격 조정을 느리게, 예를 들어 1로 하면
Xpoint = Xpoint - 1
\'어떤 사람인지 사람수만큼 역순으로 조사한다.
For i = PersonCount - 1 To 0 Step -1
\'1 일때는 For Loop가 필요없다. 2이상 부터 필요
\'한블럭 왼쪽에 도착하면
If stepwidth * i + 250 = Xpoint Then
direction = \"down\" \'무조건 아래로 이동하고
\'새로운 출발 위치는 자동으로 한블럭 왼쪽 정위치가 된다.
End If
Next i
End Select
\'해당 색상별로 점을 찍는다.PSet메서드는 점을 찍는다.
PSet (Xpoint, Ypoint), QBColor(PointColor)
Loop
\'사람과 금액을 MessageBox로 출력
MsgBox Irum(Index) + \" : \" + Str(Money(Int(Xpoint / stepwidth)))
\'금액 밑에 사람의 이름 표시
lblnameok(Int(Xpoint / stepwidth)).Caption = Irum(Index)
\'시작버튼은 사용 불가 상태로 한다.
cmdStart(Index).Visible = False
End Sub
\'되돌아 가기
Private Sub cmdReturn_Click()
Unload Me
frmstart.Show
\'바로 시작버튼을 클릭하면 에러가 발생한다.
frmstart.cmdBegin.Enabled = False
End Sub
\'종료 하기
Private Sub Cmdstop_Click()
End
End Sub
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
project1 - basLadder
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Public PersonCount As Integer \' 사람수를 간직하는 변수
Public Money(12) As Integer \' 임의로 선택된 금액을 저장하는 배열
Public Irum(12) As String \' Text박스에 입력된 이름을 순서대로 배열에 저장
Public stepwidth As Integer \'사다리 세로줄의 간격
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
게임방법 & 실행화면
게임을 실행했을 때 나오는 첫 화면이다.
우선 벌금 조전 Frame에서 조정하고 싶은 등수 OptionButton을 클릭 하면 이런 메시지 창이 뜨게 된다.
그럼 여기서 금액을 정한후 확인하게 되면
원하는등수의 벌금이 바뀌게된다.
그러면 이런 화면이 되게된다.
저기 벌금과 인원 Frame 에 금액이 바뀌어있는게 보인다.
나머지 등수도 금액을 바꾸고 인원을 조절한다.
벌금 조절과 인원조절을 한 모습이다.
그리고 선수명단 Frame에 이름을 A, B, C, D, E, F, G, H, I, J, K, L 로 지정해 놓은 화면이다.
이제 사다리를 타보자!
위에 파란색 시작 버튼을 클릭!!!
이렇게 색깔이 다르게 뚜꺼운 줄로 바뀌면서 사다리를 타기 시작한다.
해결하지 못한 점
이 레포트를 작성하면서 알아낸 버그인데 벌금의 단위를 만 단위 이상씩 설정하고 사다리타기를 하면 버그가 생겨 게임이 실행이 안된다는 것을 알게되었다.
이것을 해결하려면 어떻게 해야 할지 그것은 아직 나의 실력으론 파악을 하지 못하였다.
출처 : http://www.howtobank.net/vbboard/zboard.php?id=news
컴퓨터 프로그래밍
R E P O R T
* 간단한 게임 소스분석
과 목 명:
컴퓨터 프로그래밍
학 과:
학 번:
이 름:
제 출 일:
년 월 일 (월)
담당교수:
교수님
소개글