在游戏脚本制作方面,大家常常听说易语言、TC、按键精灵,可惜知python者甚少。

而本菜鸟就是这么钟爱python,那还能咋滴,花点时间研究研究python怎么为所欲为呗。

经过几天的努力,终究还是黄天不负有心人。python的快速制作gui界面问题解决,线程问题解决,热键注册问题解决

甚至,能够拿市场上较为牛逼的插件来用,又是手到擒来。我怎么甘心就一个大漠插件完事儿?

这不,经过个人的不懈努力,大漠插件,乐玩插件,甚至我还能直接把易语言用了模块编写的功能编译成dll直接给

python用。这下万事俱备,python也能为所欲为啦!

调用易语言直接编译的dll文件系列,直接上代码,本菜鸟准备后面把精易模块等好东西,造个python轮子出来:

下面这个代码是基础的底层知识支撑,弄明白了,就随便拿别人的dll玩,哈哈。最后,demo文件包含

一个py文件,一个编译好的dll文件以及与它对应的易语言源码程序在最下面。

#!/usr/bin/env python3
# _*_ coding: utf-8 _*_
# File  : dlltypes.py
# Author: DaShenHan&道长-----先苦后甜,任凭晚风拂柳颜------
# Date  : 2019/5/18from ctypes import WinDLL
from ctypes import c_bool,c_int,c_float,c_double,c_char_pclass types:def __init__(self,dllfile):self.dll = WinDLL(dllfile)self.bool = c_boolself.int =  c_intself.float = c_floatself.double = c_doubleself.str = c_char_pdef load(self,dllfile):self.dll = WinDLL(dllfile)#########输入参数值转换###########################def cin2bool(self,text):self.back = self.bool(bytes(text,'gbk'))return self.backdef cin2int(self,text):self.back = self.int(text)return self.backdef cin2float(self,text):self.back = self.float(text)return self.backdef cin2double(self,text):self.back = self.double(text)return self.backdef cin2str(self,text):self.back = self.str(bytes(text, 'gbk'))return self.back#########输出返回值转换###########################def cout2bool(self,func):func.restype = self.booldef cout2int(self,func):func.restype = self.intdef cout2float(self, func):func.restype = self.floatdef cout2double(self, func):func.restype = self.floatdef cout2str(self, func):func.restype = self.str#########调用windll测试程序###########################def findwindow(self,title):self.back = self.cin2str(title) #将Windll内findwindow函数的输入类型转为str型self.cout2int(self.dll.findwindow)# 将Windll内findwindow函数的输出返回类型转为bool型self.back = self.dll.findwindow(self.back)return self.backdef string(self,text):self.back = self.cin2str(text)#得到一个c_char_p(56136880)类型的指针self.cout2str(self.dll.str)#设置windll内部str函数输出返回值类型为str型self.back = self.dll.str(self.back).decode('gbk') #用于接收该返回值return self.backdef booling(self,text):if isinstance(text,str):self.back = self.cin2bool(text)#得到一个c_char_p(56136880)类型的指针else:self.back = self.bool(bytes(text))self.cout2bool(self.dll.bool)#设置windll内部str函数输出返回值类型为str型self.back = self.dll.bool(self.back) #用于接收该返回值return self.backdef inting(self,text):if isinstance(text, str):text = int(text)self.back = self.cin2int(text)self.cout2int(self.dll.int)#设置windll内部str函数输出返回值类型为str型self.back = self.dll.int(self.back) #用于接收该返回值return self.backdef floating(self,text):if isinstance(text, str):text = float(text)self.back = self.cin2float(text)self.cout2float(self.dll.float)#设置windll内部str函数输出返回值类型为str型self.back = self.dll.float(self.back) #用于接收该返回值return self.backdef doubleing(self,text):self.back = self.cin2double(text)self.cout2double(self.dll.double)#设置windll内部str函数输出返回值类型为str型self.back = self.dll.double(self.back) #用于接收该返回值return self.backdef open(self,index = 1):self.dll.open(index)def add(self,a=1,b=2):self.back = self.dll.add(a,b)return self.backdef init(self):self.dll.init()if __name__ == '__main__':lw = types("leidian.dll")ret = lw.findwindow("记事本")print(ret)ret = lw.string("技术")print(ret)ret = lw.booling('0')print(ret)ret = lw.inting('2')print(ret)ret = lw.floating(2.56)print(ret)ret = lw.doubleing(2.56)print(ret)ret = lw.add(1,5)print(ret)lw.init()

python为所欲为系列-制作游戏脚本相关推荐

  1. python能制作游戏吗_python怎么制作游戏脚本

    本文将以4399小游戏<宠物连连看经典版2>作为测试案例,通过识别小图标,模拟鼠标点击,快速完成配对完成游戏脚本. 浏览器打开游戏窗口(单个一个窗口),游戏主要界面截图需要两个坐标(左上角 ...

  2. python可以制作游戏脚本吗_如何用python制作游戏脚本?

    对于游戏编程来说,使用脚本语言可以快速地开发游戏逻辑,节省开发新型自定义语言的时间和开销,并且脚本语言通常要比编程者创造的语言更加的强大.小伙伴们学习python有一段时间了,有没有发现python语 ...

  3. python可以制作游戏脚本吗_用Python写一个游戏脚本,你会吗?

    学习python有一段时间了,由于python语言的强大和简洁,是一个不错的脚本语言,就准备做个游戏脚本练练手.如果你也想多练项目实战.可以去小编的Python交流.裙 :一久武其而而流一思(数字的谐 ...

  4. 学会Python就能做游戏脚本开发?别天真了!—— 关于游戏脚本的3个质疑

    现如今想从事和游戏相关的工作,例如游戏开发或游戏脚本策划的伙伴越来越多. 很多想从事脚本开发的伙伴有如下3点质疑: 1.学会Python就可以从事游戏脚本的工作吗? 2.脚本开发只需要学习Python ...

  5. 学会Python就能做游戏脚本开发?别天真了!

    现如今想从事和游戏相关的工作,例如游戏开发或游戏脚本策划的伙伴越来越多. 很多想从事脚本开发的伙伴有如下3点质疑: 1.学会Python就可以从事游戏脚本的工作吗? 2.脚本开发只需要学习Python ...

  6. python+大漠插件写游戏脚本

    python+大漠来写个游戏脚本 安装anaconda 安装32位python环境 使用大漠插件来进行辅助开发 安装anaconda anaconda是开源的,通过官网直接下载,网速差的也可以通过清华 ...

  7. python游戏开发步骤_【原创】python制作游戏脚本之网游寻址及64位程序的模块遍历(视频已安排)...

    本帖最后由 公孙秒秒 于 2019-4-2 18:11 编辑 前言 ------------------------------------------------- 这篇教程旨在网游的基址查找和如何 ...

  8. python可以制作游戏脚本吗_python制作简易阴阳师游戏脚本

    正值过年的关卡,疫情严重,在这里盼望武汉马上恢复起来,武汉加油!!! 在一动不动的这几天里,受朋友的邀请写了个阴阳师刷御魂的脚本. 因个人水平有限,希望各路大神指点 主要思路如下: 对区域进行截图 将 ...

  9. 还不会制作游戏脚本解放双手?那是你不会超强自动化框架AirTest!

    最近朋友问我能不能写一个自动化,帮他解放一下双手.我想了想,在我知识里很多辅助脚本制作工具,想想那些可能会有一堆局限性,想到了Python有自动化测试游戏框架或者工具,但是一直没有了解,搜了下资料,突 ...

最新文章

  1. 客户/服务器模型:编程思想
  2. 学习Java编程到底是为了什么,该具备什么样的能力
  3. LA 3458——Bridge
  4. arm linux 开机电路_【技术角度看问题之一】ARM到底是个啥?
  5. 用C#中的string.Replace有错误,无法替换。
  6. Java @Transient 注解使用
  7. php 自定义 $_SERVER
  8. linux系统环境与文件权限
  9. CSDN 日报第 1 期:蚂蚁集团将向机构投资者退款;Pyston v2 发布 比 Python 快 20%
  10. iOS原生地图开发进阶——使用导航和附近兴趣点检索
  11. [Xcode 实际操作]四、常用控件-(12)环形进度条控件的使用
  12. 午休,要有午休床,也要有毛毯
  13. 业界资讯: Flash Player Incubator 改进
  14. 华为手机文档里的html,如何在华为手机上编辑word文档
  15. Ra-08系列开发板入门教程,标准LoRaWAN对接私有服务器。
  16. java类和对象的生命周期
  17. OSChina 周五乱弹 —— 奴家一时失手,官人休怪
  18. Mac系统升级后,无法安装Cornerstone解决办法
  19. vim和emac体验
  20. python时间戳转换成时间_Python时间,日期,时间戳之间转换,时间转换时间戳,Python时间戳转换时间,Python时间转换时间戳...

热门文章

  1. 惠普服务器删除系统还原,详细教您惠普电脑如何还原系统
  2. 外国程序员的那些雷人注释
  3. 使用GraphQL,React Native和AWS AppSync编写应用程序代码:后端
  4. 安装matlab2021b之后电脑启动变慢matlab启动很慢以及初始化时间过长
  5. centos解决“Warning:/dev/root does not exist”问题
  6. 罗技发布MX518复刻版 性能升级定价299元
  7. Springboot巨好找招聘网站y18i5计算机毕业设计-课程设计-期末作业-毕设程序代做
  8. 直播源码开发,Android 屏蔽返回键(后退键)
  9. 计算机可编程控制系统实际应用,可编程控制技术应用
  10. 国足1-0韩国 热血球场想到了代码