分享一个有趣的火柴人。

By o3o_o3o_o3o at 2021-08-11 • 1人收藏 • 286人看过

我今天无聊,做了一个火柴人来一起陪我打发时间。大神们可以改善一下这个代码,增加一些火柴人的功能。

文件:

火柴人.rar

文件效果(注意鼠标光标):

代码:

import win.ui;
/*DSG{{*/
var winform = win.form(text="aardio form";right=399;bottom=299)
winform.add(
plus={cls="plus";left=0;top=0;right=400;bottom=300;foreRepeat="scale";z=1}
)
/*}}*/

import mouse;
winform.show(true);
var x,y,cx,cy = win.getPos(win.getDesktop()); 
winform.setPos(cx/2-winform.width/2,cy-winform.height+100)
i=0;
import win.ui.layered;
import win.ui.menu;
var popmenu = win.ui.popmenu(winform);
popmenu.add("退出",function(){
    winform.close()
})
win.ui.layered(winform)
startRight = function(){
    i = i%12+1
    var wx,wy = winform.getPos();
    winform.plus.foreground = "/.res/"+i+".png"
    winform.setPos(wx+7,wy)
}
startLeft = function(){
    i = i%12+1+12
    var wx,wy = winform.getPos();
    winform.plus.foreground = "/.res/"+i+".png"
    winform.setPos(wx-7,wy)
}
stop = function(){
    winform.plus.foreground = "/.res/standing.png"
}
winform.wndproc = function(hwnd,message,wParam,lParam){ 
    select(message) {
        case 0x201/*_WM_LBUTTONDOWN*/ {
            //winform.hitCaption()
        }
        case 0x204/*_WM_RBUTTONDOWN*/ {
            popmenu.popup()
        }
    }
}
while(winform.valid){
    var wx,wy = winform.getPos();
    var mx,my = mouse.getPos();
    if(mx>wx+winform.width/2+10){
        startRight()
    }
    elseif(mx<wx+winform.width/2-10){
        startLeft()
    }
    else{
        stop()
    }
    win.delay(1)
}
win.loopMessage();
return winform;

希望大佬们可以给这个火柴人增加更多的功能,比如跳跃、睡觉和聊天等,让这个火柴人变得更有趣。


6 个回复 | 最后更新于 30 天前
2021-08-11   #1

桌面宠物,哈

2021-08-11   #2

大概是这个意思。

2021-08-11   #3

动画可以写到plus.onAnimation里,然后可以在plus.onStateChange里根据 state 去调用plus.startAnimation、plus.stopAnimation, 图片也可以合成到一张图上,用gdip.bitmap(path).split分割,然后直接img[i]下标操作也挺方便的

2021-08-12   #4

回复#3 @nlysh007 :

真是不错的建议

2021-08-12   #5

不错

30 天前   #6

相当有意思 再出来一个打起来就更有意思了


登录后方可回帖

登 录
信息栏
本站永久域名:HtmLayout.Cn
纯私人站,当笔记本用的,学到哪写到哪,目前在学aardio+halcon机器视觉.
加入本站专享群:783804676
AARDIO语言QQ大群:70517368
Aardio 官方站:Aardio官方
Aardio最新功能:Aardio官方更新日志
C大Aardio论坛:Aar爱好者论坛
本 站 主 站:Stm32cube中文网
Sciter中文在线文档Sciter在线学习文档
赞助商:才仁机械
下载站:
非凡软件站



Loading...