케르발 스페이스 프로그램이라는 게임을 하다가 우연히 일식이 되는 걸 발견해서 찍어봤습니다.



('뮌'에 가려진 태양의 모습)




(케르빈에 가려진 태양의 모습)





========================================================================





http://tibyte.kr/178 에서 이어집니다.





드디어 달에 도착한 케르맨








다 쓴 연료을 발견하고 흥분을 감추지 못합니다.








또 다른 연료통 발견!









잠시 앉아서 휴식을 취합니다.











달의 아름다운 경관에 취해 정신을 놓아버린 케르맨.









지평선 너머에 지구가 보입니다.









이제 돌아갈 시간이 되어 우주선으로 다시 올라옵니다!

과연 무사히 갈 수 있을지...









아, 깜빡하고 깃발을 안 꽂고 왔네요!

내려서 깃발을 펼칩니다.






다시 우주선으로 점프해 올라와서

산적왕 히그마의 기운을 받아 탑!승!완!료!








지구를 향해 힘차게 연료를 분사합니다.








중력이 훨씬 약해서 쉽게 날아오르네요.







다시 우주공간을 헤쳐나갑니다.







어느새 멀어져서 작아진 달









적절히 연료를 분사하여 궤도를 형성합니다.








점점 가까워지고 있는 지구(케르빈)








마지막 연료통을 분리합니다!







진입 준비 완료!
우주인은 오랜 여행에 지쳤는지 미친듯이 웃고있군요.









으아아아 불탄다








고온을 잘 견뎌내고 낙하산 전개!
지금은 밤이네요..








바다에 착륙!










아침이 되어 우주선 밖으로 나가봅니다.

바다에 착륙했네요.







마침내 귀환 완료!











스팀에서 KSP 실행!!








처음으로 게임 내 위성인 뮌(Mun)에 가보겠습니다. 지구로 치면 달이죠.

힘차게 날아오르는 로켓









다 쓴 연료통 세게를 분리하고 가운데 로켓 점화!

둥근 모습의 지평선이 보이네요.

우측 하단에 입이 쭉 벌어진 비행사가 보입니다. 









게임 내 행성인 커빈의 대기권을 빠져나오고 있는 로켓.








드디어 우주가 보이기 시작하네요.

눈 앞에 펼쳐진 은하수를 보고 경이로움을 감추지 못하는 조종사...








연료 탱크 분리 후 다음 단에 있는 3개의 로켓을 다시 점화!

속도가 초속 2600m를 넘어섰네요.








태양전지판을 펼쳐서 전기를 충전합니다.









궤도시뮬레이터로 달에 접근하기 위한 궤도를 계산합니다.








지구로부터 유유히 멀어지고 있는 우주선...









달 주위를 도는 궤도를 만들고









궤도를 점점 좁혀가면서 달에 접근합니다.









저 멀리 지구가 보이네요.









달 착륙 시작!!










멀리서 본 우주선의 현재 위치와 궤도










로켓을 역분사해서 속도를 줄여줍니다.









속도가 초속 67m까지 줄어들었네요. 저 멀리 지구도 보입니다.









달 표면에 안착!

주변에서 뒹굴고 있는 부품 두개는 다 쓴 연료통입니다 ㅋ









우주선 밖으로 나와 달 표면에 내려봅시다.









드디어 달에 첫발을 딛는 순간











http://tibyte.kr/179 으로 이어집니다!
















재미로하는 10년간의 행운그래프 입니다.

운이 별로 좋지 않게 나오면 노력으로 메꾸세요.


사용방법 : 태어난 년도와 이름을 적고 확인버튼을 누르세요.

마우스 오른쪽 버튼으로 언어전환을 할 수 있습니다. (fp11.2)









코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
package
{
    import adobe.utils.CustomActions;
    import flash.display.BitmapData;
    import flash.display.DisplayObject;
    import flash.display.Sprite;
    import flash.events.Event;
    import flash.events.MouseEvent;
    import flash.geom.Point;
    
    /**
     * ...
     * @author tibyte.kr
     */
    public class Main extends Sprite
    {
        private var form1:Form1;
        private var drawingContainer:Sprite = new Sprite();
        
        public function Main():void
        {
            if (stage)
                init();
            else
                addEventListener(Event.ADDED_TO_STAGE, init);
        }
        
        private function init(e:Event = null):void
        {
            removeEventListener(Event.ADDED_TO_STAGE, init);
            // entry point
            stage.addEventListener(MouseEvent.RIGHT_CLICK, rightClick_h);
            form1 = new Form1();
            form1.name_input.text = "";
            form1.interfaceText.mouseEnabled = false;
            
            addChild(form1);
            addChild(drawingContainer);
            
            form1.ok_btn.addEventListener(MouseEvent.CLICK, btnClick_h);
        }
        
        private function rightClick_h(evt:MouseEvent):void
        {
            form1.title.gotoAndStop(form1.title.currentFrame % 2 + 1);
            form1.interfaceText.gotoAndStop(form1.interfaceText.currentFrame % 2 + 1);
        }
        
        private function calcData(year:intname:String):Array
        {
            var dataArray:Array = new Array(11);
            var md5:String = MD5.getMD5(name + year);
            var seed:int =parseInt("0x"+md5.slice(2, 6));
            var bmp:BitmapData = new BitmapData(220, 1);
            var luck:int;
            var offsets:Array = new Array(6);
            for (var j:int = 0; j < 6; j++)
            {
                offsets[j] = new Point(20*(new Date().getUTCFullYear()%30), 0);
            }
            
            /* 행운값 추출 */
            bmp.perlinNoise(120, 1, 6, seed,falsetrue, 7, true, offsets);
            for (var i:int = 0; i < 11; i+=1)
            {
                luck = Math.floor((Math.max(10, Math.min(80, (bmp.getPixel(i*20, 0) >> 16) / 255 * 100)) - 10) * (5 / 4));
                dataArray[i] = luck;
            }
            return dataArray.concat();
        }
        
        private function drawData(data:Array, dest:Sprite, form:Form1):void
        {
            dest.graphics.clear();
            
            /* 보조선 */
            dest.graphics.lineStyle(0.1, 0x666666);
            for (var i:int = 0; i < 11; i++)
            {
                dest.graphics.moveTo(calcX(i, form), calcY(100, form));
                dest.graphics.lineTo(calcX(i, form), calcY(0, form));
            }
            
            /* 그래프 */
            dest.graphics.lineStyle(2, 0xcc0033);
            dest.graphics.moveTo(calcX(0, form), calcY(data[0], form));
            for (var i:int = 1; i < 11; i++)
            {
                dest.graphics.lineStyle(2, 0xcc0033);
                dest.graphics.lineTo(calcX(i, form), calcY(data[i], form));
            }
        }
        
        private function calcY(value:int, form:Form1):Number
        {
            return form.point2_mc.y - (form.point2_mc.y - form.point1_mc.y) / 100 * value;
        }
        
        private function calcX(index:int, form:Form1):Number
        {
            return form.point1_mc.x + (form.point2_mc.x - form.point1_mc.x) / 10 * index;
        }
        
        private function btnClick_h(evt:MouseEvent):void
        {
            if (form1.name_input.text == "")
                return;
            var dataArray:Array = calcData(form1.age_input.value, form1.name_input.text);
            drawData(dataArray, drawingContainer, form1);
        
        }
    }
 
}


















스크린샷 첨부.




















아이템 3개 쓴 결과입니다.

애니팡은 역시 운빨...






0.2 비교 알고리즘 개선, 버튼 엔터키 추가
0.3 그래픽 개선, 그래프 추가 

재미로 해보는 삼자대결 게임!
비교할 3명의 이름을 입력하고 버튼을 누르면 
이름에 따른 결과가 나옵니다.



============================================================================================









최신버전(0.3.7) : http://www.tibyte.kr/132



재미로 해보는 삼자대결 플래시입니다.
버전 0.1.3


============================================================================================










대항해시대 온라인 6강 사선 (티크, 급가, 폭항, 고감, 돛맥, 선회맥)












스샷 날짜 : 2012년 3월












5강 예항용커터




5강 사선 (티크)

+ Recent posts