|
|
|
|
||
.版本 2
.程序集 我的游戏
.程序集变量 logo图片, D2D图片
.程序集变量 logo精灵, D2D精灵
.程序集变量 显示文字开始位置, 整数型
.子程序 _启动子程序, 整数型, , 本子程序在程序启动后最先执行
.局部变量 屏幕, D2D_屏幕
屏幕.帧率 = 60
屏幕.逻辑函数 = &屏幕逻辑
屏幕.渲染函数 = &屏幕渲染
屏幕.标题 = “易语言+D2D logo加载并排版文字演示 By 潇潇 2010.4.27”
屏幕.宽 = 640
屏幕.高 = 480
屏幕.小图标 = 取运行目录 () + “/logo/demo.ico”
引擎.创建 (屏幕, #窗口化)
' ---------------------------------------------------------------------
logo图片.纹理 = 引擎.载入纹理 (取运行目录 () + “\logo\logo.png”)
logo精灵.创建 (logo图片, 0, 0, 260, 158)
logo文字.创建 (“宋体”, 20, 假, 假, 假, #颜色_黄)
' ---------------------------------------------------------------------
引擎.启动 ()
' ---------------------------------------------------------------------
引擎.销毁 ()
返回 (0)
.子程序 屏幕逻辑, 逻辑型, , 返回真 游戏结束
返回 (假)
.子程序 屏幕渲染, 逻辑型, , 返回真 游戏结束
.局部变量 文本内容, 文本型
.局部变量 文本内容字节集, 字节集
.局部变量 文本长度, 整数型
.局部变量 i, 整数型
.局部变量 行, 整数型
.局部变量 列, 整数型
.局部变量 输出文本, 文本型
.局部变量 是否换行, 逻辑型
引擎.渲染开始 ()
引擎.清屏 ()
' ---------------------------------------------------------------------
文本内容 = “潇潇编程简介:主要以编程开发为主,包括易语言、VB、Delphi、汇编、C/C++、VC++、C#、JAVA、D语言、PB、.NET、习语言、加密解密、脱壳破解、游戏设计、游戏引擎、外挂制作、图形动画、网页设计、WEB开发、Flash动画、Flash编程、电工电子等相关技术及视频教学,还包括常用工具软件下载以及视频教程下载等,努力创建程序设计相关的综合教学网站。主页:http://www.wgbcw.cn 论坛:http://www.wgbcw.com 易语言+D2D logo加载并排版文字演示 By 潇潇 2010.4.27”
' 文本内容 = 读入文本 (打开文件 (取运行目录 () + “\logo\logo.txt”, #读入, ), )
文本长度 = 取文本长度 (文本内容)
文本内容字节集 = 到字节集 (文本内容)
logo精灵.显示 ((引擎.取屏幕宽度 () - logo精灵.取宽度 ()) ÷ 2, 0)
显示文字开始位置 = logo精灵.取高度 () + 20
行 = 1
i = 1
是否换行 = 假
.判断循环首 (i ≤ 文本长度)
.如果 (文本内容字节集 [i] > 127) ' 判断是汉字
输出文本 = 到文本 (取指定位置字节集 (文本内容字节集, i, 2)) ' 取指定位置字节集() 为自定义函数,可用库命令"取字节集中间()"代替
.如果 (行 = 1)
.如果 (10 × i < 引擎.取屏幕宽度 () - 20)
logo文字.显示 (10 × i, 显示文字开始位置 + 20 × 行, 输出文本)
是否换行 = 假
.否则
.如果 (10 × i ≥ 引擎.取屏幕宽度 () - 20)
是否换行 = 真
行 = 行 + 1
列 = 1
.否则
.如果结束
.如果结束
.否则
.如果结束
.如果 (是否换行 = 假 且 行 > 1)
.如果 (10 × 列 < 引擎.取屏幕宽度 () - 20)
logo文字.显示 (10 × 列, 显示文字开始位置 + 20 × 行, 输出文本)
列 = 列 + 2
是否换行 = 假
.否则
.如果 (10 × 列 ≥ 引擎.取屏幕宽度 () - 20)
是否换行 = 真
行 = 行 + 1
列 = 1
.否则
.如果结束
.如果结束
.否则
.如果结束
.如果 (是否换行 = 真 且 行 > 1)
.如果 (10 × 列 < 引擎.取屏幕宽度 () - 20)
logo文字.显示 (10 × 列, 显示文字开始位置 + 20 × 行, 输出文本)
列 = 列 + 2
是否换行 = 假
.否则
.如果 (10 × 列 ≥ 引擎.取屏幕宽度 () - 20)
是否换行 = 真
行 = 行 + 1
.否则
.如果结束
.如果结束
.否则
.如果结束
i = i + 2
.否则
.如果 (文本内容字节集 [i] < 127) ' 判断是字符和字母
输出文本 = 到文本 (取指定位置字节集 (文本内容字节集, i, 1))
.如果 (行 = 1)
.如果 (10 × i < 引擎.取屏幕宽度 () - 20)
logo文字.显示 (10 × i, 显示文字开始位置 + 20 × 行, 输出文本)
列 = i
是否换行 = 假
.否则
.如果 (10 × i ≥ 引擎.取屏幕宽度 () - 20)
是否换行 = 真
行 = 行 + 1
列 = 1
.否则
.如果结束
.如果结束
.否则
.如果结束
.否则
.如果结束
.如果 (是否换行 = 真 且 行 > 1)
.如果 (10 × 列 < 引擎.取屏幕宽度 () - 20)
logo文字.显示 (10 × 列, 显示文字开始位置 + 20 × 行, 输出文本)
列 = 列 + 1
.否则
.如果 (10 × 列 ≥ 引擎.取屏幕宽度 () - 20)
是否换行 = 真
行 = 行 + 1
.否则
.如果结束
.如果结束
.否则
.如果结束
.如果 (是否换行 = 假 且 行 > 1)
.如果 (10 × 列 < 引擎.取屏幕宽度 () - 20)
logo文字.显示 (10 × 列, 显示文字开始位置 + 20 × 行, 输出文本)
列 = 列 + 1
是否换行 = 假
.否则
.如果 (10 × 列 ≥ 引擎.取屏幕宽度 () - 20)
是否换行 = 真
行 = 行 + 1
.否则
.如果结束
.如果结束
.否则
.如果结束
i = i + 1
.如果结束
.判断循环尾 ()
' ---------------------------------------------------------------------
引擎.渲染结束 ()
返回 (假)
.子程序 取指定位置字节集, 字节集
.参数 字节集内容, 字节集
.参数 起始位置, 整数型
.参数 要取个数, 整数型
.局部变量 i, 整数型
.局部变量 字集内容, 字节集
.局部变量 字集长度, 整数型
.局部变量 字符长度, 整数型
字集长度 = 取字节集长度 (字节集内容)
.变量循环首 (起始位置, 字集长度, 1, i)
字集内容 = 字集内容 + 到字节集 (字节集内容 [i])
.如果 (i = 起始位置 + 要取个数 - 1)
跳出循环 ()
.否则
.如果结束
.变量循环尾 ()
返回 (字集内容)
.版本 2