hinekure.net が http://hspdev-wiki.net/ から自動クローリングした結果を表示しています。画像やリソースなどのリンクが切れています。予めご了承ください。
小ワザ/アクションゲーム/pget - HSP開発wiki
トップ    編集凍結 差分バックアップ添付複製名前変更リロード   新規一覧単語検索最終更新   最終更新のRSS

色取得によるMAP移動

filesample.as
Everything is expanded.Everything is shortened.
  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
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
    buffer 3
    picload "map.bmp"
    screen 0,260,230
 
    cls 4            ;画面を黒く
 
    X=0:Y=0
    O=0            ;中心に来たら→1
    B=0            ;ジャンプ限界
    G=3            ;重力
    J=0:muki=0        ;J=0:地上 1:飛ぶ 2:降りる
 
 
;→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
;→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
*メイン
    repeat
    repeat 3
 
    redraw 2
    
    gosub *ジャンプ    
    gosub *描画
    stick K,5:if K!0:gosub *操作
    if K=0:walk=0
    
    await 1
    
    redraw 1
    loop
 
    loop
;→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
;→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
 
*ジャンプ
    if J=1:B+=G:Y+=B:if B>0:J=2:B=0
    if J=2:B+=G:Y+=B
    if J=2:LOOF=B
    return
 
*操作
    if K&16:if J=0:J=1
    if K&1:X-=5:muki=1:walk=1        ;左
    if K&4:X+=5:muki=0:walk=1        ;右
    return   
 
*描画
    
    color 0,0,0:boxf                
    gosub *MAPスクロール
    if X>235:X=235                            
    if X<0:X=0                            
    if Y>200:Y=205:J=0:B=-19                    
    if Y<-20:Y=-20
    
    gosub *床当たり判定
    pos X,Y:gmode 2                            
    gosub *まる
    
    SHOT=0
    return
 
;→→→→→→→レベル2→→→→→→→→→→→→→→→→→→→→→→→→→
 
*床当たり判定
    if (J=0)&(muki=1):pget X+15,Y+15                
    if (J=0)&(muki=0):pget X,Y+15
    if Y!205:if (J=0)&(rval=0):J=2:B=0                
    
    repeat LOOF                            
                                    
        CN=cnt                            
            repeat 24,1                    
                if J=2:pget X+cnt,Y+15+CN        
                if rval!0:break                
            loop                        
        if rval!0:break                        
    loop                                
                                    
    if (J=2)&(rval=200):J=0:B=-19:Y+=CN                
    return
 
*MAPスクロール
    if O=0:if (muki=0)&(X>120):O=1
    if O=2:if (muki=1)&(X<120):O=1
    if O=1:X=120:if K&4:Mx+=5:else:if K&1:Mx-=5
    if Mx>520:Mx=520:O=2
    if Mx<0:Mx=0:O=0
    gmode 1
    pos 0,0:gcopy 3,Mx,0,270,230
    return
 
*まる
    if (walk=0)and(J=0):color 255,255,255:mes "○"                ;静止
    if (walk=1)and(J=0):color 255,255,255:mes "○"            ;走る
    if (J!0):color 255,255,255:mes "○"                ;ジャンプ
    return
 
 
 
 
    
  • かなり前に作ったので滅茶苦茶ですが、これは正常動作するかと。 -- Charlotte 2005-05-29 14:36:31 (日)
  • map.bmpにRGBのR-200の線を引けば乗っかります。 -- Charlotte 2005-05-29 14:39:27 (日)
  • 坂を下ることはできるようになってます。一応orz(上れない;; -- Charlotte 2005-05-29 14:40:30 (日)
  • 壁の中にもめり込みます;; -- kz3 2005-05-29 17:53:05 (日)
  • 下しか判定してないですからそこらへんは仕様 -- Charlotte 2005-05-29 17:53:55 (日)
    • 勘弁!! -- Charlotte 2005-05-29 17:55:34 (日)
  • 宙に浮いています・・・ -- kz3 2005-05-31 12:24:06 (火)
    • え?!浮いてる???? -- Charlotte 2005-05-31 13:06:52 (火)
    • あ〜これはですね、初めはもっと大きいキャラクタ使ってたんでそのなごり(ぇ -- Charlotte 2005-05-31 13:14:22 (火)
    • 直せよ!て感じですね;; -- Charlotte 2005-05-31 13:15:08 (火)
  • 不特定多数に公開する上でその投げやりはどうかと -- 2009-06-21 (日) 18:44:13
  • スパムが多いのでコメントを消してみました (コメントをコメントアウト……くだらない)。 -- 2010-02-25 (木) 19:09:10
添付ファイル:
filesample.as
980件 [詳細]
filemap.bmp
1650件 [詳細]
filejump.as
224件 [詳細]
トップ    編集凍結 差分バックアップ添付複製名前変更リロード   新規一覧単語検索最終更新   最終更新のRSS
Last-modified: 2010-02-25 (木) 19:10:20 (1381d)