自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(51)
  • 资源 (6)
  • 收藏
  • 关注

原创 【目录】pygame网络游戏教程

项目源码地址:https://github.com/zxf20180725/pygame-jxzj,求赞求星星~每一章的源码都在github呦!我建议大家在看每篇博客之前,先把这章的代码给大致的看一遍,特别是网络部分,不要上来就看博客,很容易看不懂的。如果大家发现有错误的地方或者有什么问题,欢迎加Q群讨论:812095339pygame网络游戏_1:简介pygame网络游戏_2...

2020-02-29 14:32:11 7777 1

原创 java实现的A星算法

A星算法原理:原理我就不再赘述,可以参考这篇博客:https://blog.csdn.net/hitwhylz/article/details/23089415需要js代码的看这里:https://blog.csdn.net/qq_39687901/article/details/85697127需要python代码的看这里:https://blog.csdn.net/qq_39687901/article/details/80753433用法:这里是八方寻路,如果想改成四方寻路,把AS

2021-04-19 18:44:33 1034

原创 python获取上周一的日期

一.需求不论今天是周几,固定获取上周一的日期二.代码import datetimedef get_last_monday(today=None): """ 获取上周一的日期,不传today则用今天的日期 """ if not today: today = datetime.datetime.now() weekday = today.weekday() return today - datetime.timedelta(da

2021-03-22 15:09:17 2447

原创 python教你用骰子拼图

一、前言最近看到抖音上有人用骰子拼照片。仔细一想,这人肯定是借助了什么工具,把预览图生成好之后再拼的。我灵光一闪,赶紧用python写一个骰子拼图仿真程序,并且自己也买了3500个骰子拼了一张图,哈哈哈哈~二、效果三、代码地址代码我已经在github开源了,喜欢的可以点个star,转载请注明出处:https://github.com/zxf20180725/dice_jigsawmain.py是启动文件,直接运行就行了。如果想用自己的图片(一定要是黑白图片,可以用ps的去色功能,

2021-02-10 18:37:26 2644 4

原创 flask-sqlalchemy快速上手

一、前言本篇依然是面向有一定经验的开发者。本篇不会讲原理,一切以实用为主。本篇主要讲述以下内容:flask-sqlalchemy的搭建 简单查询 查询指定字段 排序 分页 聚合函数 连表查询 修改 删除二、flask-sqlalchemy练习环境准备1.准备好我们要用的数据,这里我使用的是mysql--建表--学生表CREATE TABLE `Student`(`s_id` VARCHAR(20),`s_name` VARCHAR(20) NOT NUL.

2020-12-30 14:18:50 387

原创 flask接口开发快速上手

一、前言为了让有django或其他python web框架开发经验的同学快速上手flask接口开发,所以有了写这篇文章的想法。本文不会讲理论知识,一切以实用、快速上手为主。文本只讲前后端分离的接口开发。二、flask环境准备1.pip install flaskFlask 是一个轻量级 Web 应用程序框架,用来写接口再合适不过了。官网:https://flask.palletsprojects.com/en/1.1.x/2.pip install flask-loginfl

2020-12-23 23:31:58 1241 2

原创 python游戏开发实战:梦幻西游背包系统

一、效果整理背包演示物品叠加演示拖动窗口演示二、源码代码挺多的,我就不贴在博客里了,大家直接在百度网盘下载吧:链接:https://pan.baidu.com/s/13CUF4cxtQBKH0U__ay5B7g提取码:jr2y稍微说一下项目文件结构:背包系统的核心代码在/package_demo/code/package.py中 /package_demo/code/engine是我对pygame常用功能的一些封装,与具体的业务逻辑无关 /package_demo/code/.

2020-09-12 11:30:00 2751 1

原创 pygame网络游戏_7_1:地图编辑器的使用

由于有好几个小伙伴问我怎么自己编辑地图,那么这一张我就专门讲一下,怎么替换本教程中的地图。1.下载地图编辑器,地图编辑器在教程文件的第七章中。下载地址:链接:https://pan.baidu.com/s/18JwDxYH8PmL2NPww0kW2PQ提取码:4r6s2.准备好地图背景图的png图片和地图遮挡层的图片3.把地图背景图的图片改名为0.png,你改成其他名字也无所谓4.把0.png放到地图编辑器的map文件夹中5.打开地图编辑器.exe6.点击:操作->.

2020-07-14 20:55:50 2023 7

原创 pygame实现中文输入框

为了解决pygame不能输入中文的问题,今天写了一个中文输入框你要是觉得好用的话,给我这几个仓库点个星吧:https://github.com/zxf20180725/pygame-jxzjhttps://github.com/zxf20180725/pal2slg1.效果2.源码以下代码需要安装:pip install Pinyin2Hanzi然后就可以直接运...

2020-03-05 21:30:13 8806 15

原创 pygame网络游戏_5_5:网络编程_游戏客户端【终章!】

项目源码地址:https://github.com/zxf20180725/pygame-jxzj,求赞求星星~1.本章效果2.回顾哎呀呀,好久没更新了,这几天一直在搞我的pygame新项目仙剑奇侠传二战棋版。今天抽空把这一系列的教程给完结了!在上一章中,我们已经把游戏服务端写的差不多了,这次我稍微改了一下服务端代码,就给玩家增加了一个role_id属性,这个属性可以让不同的玩...

2020-02-28 21:59:06 2509 2

原创 【纯python/pygame大型游戏开发】仙剑奇侠传二战棋版

用pygame开发仙剑奇侠传二战棋版完全是因为情怀,15年仙剑老玩家,通关第一款仙剑就是仙剑二。为啥用pygame做,而不用其他引擎呢?1.我也不指望这个游戏有玩家去玩2.做这个完全是为了情怀3.python用的舒服,一天不写代码浑身难受,我就过过代码瘾4.接触pygame和它爹sdl这么久了,我总要留点什么在网上吧项目地址在这里:https://github.com/zx...

2020-02-27 19:33:02 5245 4

原创 HTML5 canvas自适应手机屏幕大小的一种解决方案

一、最终效果为了不浪费大家时间,先展示最终效果,看看是不是大家需要的解决方案:完整项目地址:https://github.com/zxf20180725/canvas_auto-adapted标准分辨率:其他分辨率的适配情况:二、需求1.canvas的内容能全部展示在屏幕上2.尽量能保证图像不变形3.绘制的文字也能自适应三、解决方案1.我们需要指定一...

2020-01-23 18:32:42 3916

原创 js把2字节unicode编码转换成utf8编码

/* 作者:狡猾的皮球 * 2019年12月10日 16:33:04 * 功能: * 2字节unicode转换成1~4字节的utf8字节数组 * 参数: * unic:0~65535之间的整数 * 返回值: * 1~4字节的整型数组,比如[228,189,160]或者[64]等等 */ function unic...

2019-12-10 18:20:49 552

原创 pygame网络游戏_5_4:网络编程_设计通信协议

1.回顾之前,我们写了一个Connection的子类Player,简单的实现了deal_data方法去处理客户端发送过来的数据(也就是print了一下)。那么,这一章我们就真正的来设计一套简单的客户端和服务端数据交互的逻辑,供我们的《间隙之间》使用。2.设计通信协议在网络游戏中,客户端会有很多的操作,比如账号登录、移动角色、攻击、聊天等等。这些操作都需要与服务端进行网络通信。所以我们得...

2019-12-06 14:11:26 1678 2

原创 pygame网络游戏_5_3:网络编程_我们的服务端

项目源码地址:https://github.com/zxf20180725/pygame-jxzj,求赞求星星~1.前言两个多月没更新了,这两个月经历了一些事情,让人挺难受的,不过人就是这样在这些经历中变得更加成熟。好了,回到主题。这一章呢,我们需要动手封装一个非常非常简易的游戏服务端框架。前面我也说过,服务端的水很深,所以我只打算做一个基本能跑的服务端出来。这里就相当于带大家入个门吧...

2019-11-14 23:28:45 1628 6

原创 pygame网络游戏_5_2:网络编程_简单的多连接服务端

项目源码地址:https://github.com/zxf20180725/pygame-jxzj,求赞求星星~1.什么是多连接 在上一章中,我们实现了一个简单的网络程序。但是这个代码有明显的缺陷,那就是客户端和服务端只能一对一的通信,而且服务端在接收到客户端的一条数据后并回复后就退出了。 我们知道网络游戏是需要多人同时在线的。所以,在本章中,我们需要把服务端改造成能支持多...

2019-08-25 23:03:42 2332

原创 pygame网络游戏_5_1:网络编程_HelloWorld

项目源码地址:https://github.com/zxf20180725/pygame-jxzj,求赞求星星~工作太忙啦,没啥时间更新博客,大家有什么疑问,欢迎加q群讨论,刚创的:812095339快两个月没更新啦。这段时间因为换工作,一直很忙没时间写文章。现在工作稳定啦,继续继续~1.什么是网络编程在之前的文章中,我们都是写的单机程序。从本章开始,我们将正式进入到网络编程部分啦...

2019-05-14 11:01:49 2735

原创 pygame网络游戏_4_4:人物行走_地图滚动

项目源码地址:https://github.com/zxf20180725/pygame-jxzj,求赞求星星~工作太忙啦,没啥时间更新博客,大家有什么疑问,欢迎加q群讨论,刚创的:8120953391.效果游戏地图一般都是比窗口大的,所以需要地图滚动:2.算法我们的已知条件:1.地图图片的宽和高,用surface的get_width()和get_height()...

2019-03-19 17:36:35 4523 5

原创 pygame网络游戏_4_3:人物行走_自动寻路

项目源码地址:https://github.com/zxf20180725/pygame-jxzj,求赞求星星~工作太忙啦,没啥时间更新博客,大家有什么疑问,欢迎加q群讨论,刚创的:8120953391.本章效果在讲代码之前,先看看本章实现的效果吧~看完效果是不是迫不及待的想学习了?开搞开搞!2.计算鼠标点中了地图的哪个格子寻路之前,我们肯定得知道角色要去的终点坐...

2019-03-14 16:50:59 13402 4

原创 pygame网络游戏_4_2:人物行走_角色移动效果

项目源码地址:https://github.com/zxf20180725/pygame-jxzj,求赞求星星~工作太忙啦,没啥时间更新博客,大家有什么疑问,欢迎加q群讨论,刚创的:8120953391.添加网格线为了让大家能更直观的感受到地图是一个个小格子,我在GameMap类中又新增了一个绘制网格线的方法: def draw_grid(self, screen_surf...

2019-03-14 14:29:01 8326 7

原创 pygame网络游戏_4_1:人物行走_地图设计

项目源码地址:https://github.com/zxf20180725/pygame-jxzj,求赞求星星~工作太忙啦,没啥时间更新博客,大家有什么疑问,欢迎加q群讨论,刚创的:8120953391.游戏地图的组成地图在游戏中是非常重要的一部分,几乎所有的游戏都有地图。比如梦幻西游中的长安城、建邺城、大雁塔等等都是游戏地图。那么在我们的开发中,地图的组成部分有:1.地图的背...

2019-03-13 12:01:05 6969 3

原创 pygame网络游戏_3:使用精灵图

项目源码地址:https://github.com/zxf20180725/pygame-jxzj,求赞求星星~工作太忙啦,没啥时间更新博客,大家有什么疑问,欢迎加q群讨论,刚创的:8120953391.什么是精灵图精灵图:将多张图片合成到一张图片上精灵图最重要的优点就是加载速度快,为啥呢?如果一个动画有20帧,不用精灵图的话,就得读取20个文件。但如果把20张图片都集成到一张图片...

2019-03-12 16:57:25 5824 4

原创 pygame网络游戏_2:准备工作

工作太忙啦,没啥时间更新博客,大家有什么疑问,欢迎加q群讨论,刚创的:8120953391.创建项目为了方便大家能轻松获取到每一章节的代码,在每一章节写完之后,我会将代码上传到github。并且在项目中,文件夹名称与每一章节的文章名称是相对应的。比如本章:项目地址是:https://github.com/zxf20180725/pygame-jxzj,求赞求星星~2.明确需求...

2019-03-12 14:30:31 3026

原创 pygame网络游戏_1:简介

工作太忙啦,没啥时间更新博客,大家有什么疑问,欢迎加q群讨论,刚创的:8120953391.文章简介 三年前,我和一位网友一起开发了一款网络游戏《间隙之间》。当初,只是想实现我的游戏梦,就算游戏没一个人玩,我也感到非常满足。当看到游戏的一个个功能被自己实现的时候,那种成就感、满足感,你们懂的~ 在百度上搜索 pygame网络游戏 时,发现几乎没有任何相关的内...

2019-03-12 11:29:39 7913 3

原创 游戏开发中的界面拖动算法

一、前言今天在写游戏的时候,死活想不起来面板的拖动算法。明明是个超级简单的数学问题,咋今天就是反应不过来呢。吓得我赶紧看了看几年前写的游戏里的算法...二、效果这是两三年前写的mmorpg,已经弃坑多年啦。三、算法我们已知:1.鼠标按下时的坐标x1,y12.鼠标移动时的坐标x2,y23.面板没被拖动时的坐标x3,y3我们要求:面板在鼠标移动时的坐标x,y...

2019-01-23 11:07:48 699

原创 python找出仙剑二地图遮挡层图片在大地图中的坐标

使用方法:把脚本放在图片目录下,输入图片编号即可(请手动删除全黑图块)import osimport randomimport cv2import pygamedef get_small_images(dir_path, map_id): """ 获取小图文件 """ files = [] for file_name in os.li...

2019-01-04 16:21:05 544

原创 js实现的A星算法

一、前言最近在写js的slg游戏,需要用到a星算法。之前用python写过https://blog.csdn.net/qq_39687901/article/details/80753433,现在再用js写一遍。二、源码//二维数组function Array2D(w, h, num) { var data = []; var default_num = num |...

2019-01-03 15:07:31 3728

原创 html5 canvas纯js开发战棋类rpg游戏

一、效果游戏是用纯js开发的,我也不是经常用js,代码有写的不好的地方还请见谅。这个项目是上班闲着的时候做的,目前正在开发中,代码地址:https://github.com/zxf20180725/slgpal/tree/feature/zxf代码我就不多解释了,可以自己下载下来看看,可以直接运行src的main.html若有问题,欢迎加我qq871245007互相交流。 ...

2018-12-28 22:27:30 2848

原创 微信小程序关联公众号(服务号)推送通知消息

一、背景最近开发的一个小程序项目需要通过服务号来推送通知。但是在最开始开发小程序的时候并没有考虑到这个功能。我在做小程序与服务号用户关联的过程中也是踩了无数坑,所以我会在这篇文章中给出自己摸索出的解决方案。二、准备条件预备知识:小程序openid:小程序用户的唯一id公众号openid:公众号用户的唯一idunionid:同一用户,对同一个微信开放平台下的不同应用,un...

2018-12-25 11:08:30 36038 9

原创 python游戏开发实战:行走系统之地图编辑器

一、运行效果操作说明:方向键控制地图移动w键保存地图r键读取地图鼠标左键设置障碍鼠标右键删除障碍二、前言之前呢,写过一个python的A星算法类(A星算法),运行结果只能在控制台查看,太不爽了。A星算法可是游戏里常用的寻路算法,当然是要结合游戏使用才过瘾。所以,我打算写几篇关于2drpg行走系统开发的文章。写行走系统之前,我们得有个地图编辑器。将地图行走...

2018-12-07 18:06:22 3015

原创 python游戏开发实战:文本框(TextBox)

一、效果二、代码这个代码还有很多地方需要优化。比如绘制文字的时候,每帧都生成了surface等等问题,以后有空我再优化。当前代码修改时间:2018年11月1日 15:16:41import pygameclass TextBox: def __init__(self, w, h, x, y, font=None, callback=None): ...

2018-11-01 15:17:45 8441

原创 python游戏开发实战:黑客帝国特效

一、效果二、源码import randomimport pygameFONT_PX = 15pygame.init()winSur = pygame.display.set_mode((640, 480))font = pygame.font.SysFont("fangsong", 20)bg_suface = pygame.Surface((640, 480...

2018-10-30 18:09:46 5385 3

原创 python游戏开发实战:视频转彩色字符动画

一、效果原图:转换后:效果可通过代码开头几行的参数调节二、代码开头几行代码,自己看着调整,把效果调到最佳就ok。依赖库:pip install opencv-pythonpip install pygameimport pygameimport cv2FONT_SIZE = 18 # 字体大小,可自行调整WIN_SIZE = (1440, 1...

2018-10-24 17:49:23 2106 5

原创 python装饰器实现函数注册和类装饰

一、使用装饰器实现回调函数注册class FunctionManager: def __init__(self): print("初始化") self.functions = [] def execute_all(self): for func in self.functions: func() ...

2018-09-25 17:05:08 4338

原创 python游戏开发实战:滚动列表(ScrollList)

一、效果二、简介最近在用pygame做《魔塔Online》,需要一个滚动列表。可是pygame关于GUI方面的东西毛都没有,又要自己造轮子了。目前写的这个ScrollList功能比较简单,item只能显示文字,就先凑合着用啦。三、使用方法引入ScrollList之后(ScrollList源码在文章最后),用以下代码就能在窗口中创建一个滚动列表啦。def func(data...

2018-09-20 12:50:30 1836 4

原创 ERROR: Couldn't connect to Docker daemon at http+docker://localhost - is it running? 解决办法

问题描述:ERROR: Couldn't connect to Docker daemon at http+docker://localhost - is it running?If it's at a non-standard location, specify the URL with the DOCKER_HOST environment variable.  解决办法:...

2018-08-30 10:12:25 8988 3

原创 python异步实现定时任务和周期任务

一.如何调用def f1(arg1, arg2): print('f1', arg1, arg2)def f2(arg1): print('f2', arg1)def f3(): print('f3')def f4(): print('周期任务', int(time.time()))timer = TaskTimer()# 把任务加入...

2018-08-23 18:23:58 6818

原创 python游戏开发实战:网络游戏Demo(客户端)

一.运行效果二.介绍源码github:https://github.com/zxf20180725/pygame-online-demo.git这只是一个简单的联网程序Demo,代码有很多不严谨的地方,仅当抛砖引玉了。运行客户端程序,会随机取一个名字进入游戏。使用wsad移动头像(蓝葵~)。三.代码解析注意,这里只会贴出部分核心代码,完整代码请在上面的github链接中...

2018-08-21 15:06:32 12819 2

原创 python设计tcp数据包协议类

一.问题描述    在tcp编程中,最需要解决的就是粘包分包问题。所以,我们需要在每个数据包前面加上数据包的长度用以分割粘连的包。 二.包结构的设计    包的组成:包长度+数据域     包长度:用4个字节存储数据域长度,数据域长度即为其所占字节数    数据域:由若干个变量组成,如果是定长变量则不用加变量长度    定长变量:我们人为规定,传输中的int为4字节定长...

2018-08-10 09:58:36 6311 1

原创 python以16进制打印字节数组

一.问题描述    如果直接用print打印bytes的话,有时候会直接显示ascii对应的字符,看起来很蛋疼。 二.运行效果上面一行是直接用print打印的结果,很明显,第一个字节0x7b就被转换成'{'了。 三.代码    那么,如何输入上图中最后一行的格式呢,很简单:def print_hex(bytes): l = [hex(int(i)) f...

2018-08-09 18:04:33 20327

超级玛丽全部素材(图片音乐字体)

之前那个资源的分越来越高了,我现在重新传一个新的 红白机的超级玛丽全部素材,包括所有图片(地图瓦片、人物、怪物、特效等,已全部对齐)、音乐、音效

2020-09-11

代码整洁之道:程序员的职业素养.pdf

《程序员的职业素养》是编程大师 Robert C. Martin大叔40余年编程生涯的心得体会, 讲解成为真正专业的程序员需要什么样的态度、原则,需要采取什么样的行动。作者以自己以及身边的同事走过的弯路、犯过的错误为例,意在为后来人引路,助其职业生涯迈上更高台阶。 《程序员的职业素养》适合所有程序员,也可供所有想成为具备职业素养的职场人士参考。

2019-03-07

超级玛丽完整素材

红白机的超级玛丽全部素材,包括所有图片(地图瓦片、人物、怪物、特效等,已全部对齐)、音乐、音效

2018-05-31

泡泡堂游戏图片音乐素材

泡泡堂的游戏素材,包括地图图块、爆炸特效、道具、角色行走、UI以及游戏音效及背景音乐。注意:图片是bmp格式,紫色背景,音效是wav格式。

2018-03-16

华容道游戏图片素材

中国民间益智游戏华容道的图片素材,包含png和psd源文件。所有图片都是我用PS原创的,随意使用。

2018-03-16

VB A星算法模块(可移植)

VB的A星算法模块,有详细的注释,并且附带演示功能。演示操作说明:鼠标左键设置障碍,鼠标右键设置起点和终点。寻路之后,灰色代表关闭表中的节点、紫色是开启表中的节点、蓝色是路径。当年写的代码,现在看起来有些稚嫩了,有空会再优化的。模块详细使用说明请参照“A星寻路算法.bas”。

2018-01-27

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除