ppardalj / ultima-paperdoll-drawer-php
用于生成Ultima Online角色纸娃娃图片的库
v0.1.0
2017-10-12 15:53 UTC
Requires
- php: ^7.1.3
Requires (Dev)
- phpunit/phpunit: ^6.3
This package is not auto-updated.
Last update: 2024-09-19 19:39:46 UTC
README
一个用于绘制Ultima Online角色纸娃娃图片的PHP库。
要求
- PHP >= 7.1
- GD扩展
- 这些Ultima Online客户端文件(您需要从您的UO安装中提供它们)
gumpidx.mul
gumpart.mul
tiledata.mul
hues.mul
安装
通过composer
$ composer require ppardalj/ultima-paperdoll-drawer-php
用法
Ultima Online客户端文件
您需要提供您的Ultima Online客户端MUL文件,并将它们放入uofiles目录。如果您使用的是较新的Ultima Online安装,并且您的客户端文件是UOP格式,您需要使用一个工具(例如LegacyMulConverter)将您的文件转换为MUL格式。
代码
将MUL文件放置好之后,在您的PHP脚本中使用PaperdollBuilder
类来自定义您角色的纸娃娃。您可以使用流畅的接口来更改名称、标题、皮肤色调、种族、性别并添加物品。
最后,获取一个配置了您的Ultima Online客户端文件的PaperdollDrawer
类实例,并使用它来绘制您刚刚构建的纸娃娃。
您将得到一个可用的图像资源,您可以使用它来满足您的需求。
$drawer = PaperdollDrawer::with('/path/to/uofiles'); $paperdoll = PaperdollBuilder::create('Lord Semerkhet') ->withTitle('Legendary Developer') ->withItem(new Item(9860, 1109, Layer::NECK)) // Hooded shroud of shadows ->build(); $paperdollImage = $drawer->drawPaperdoll($paperdoll); imagepng($paperdollImage, 'mypaperdoll.png'); // save to png file
您可以在示例目录中找到更多示例。
贡献
请随意报告您发现的任何错误,或者提交带有新功能、错误修复等的pull请求。
许可
本程序是自由软件:您可以在自由软件基金会发布的GNU通用公共许可证的条款下重新分发和/或修改它,许可证版本为3,或者(根据您的选择)任何后续版本。
本程序按照希望它将是有用的,但没有任何保证;甚至没有对适销性或特定用途适用性的暗示保证。有关详细信息,请参阅GNU通用公共许可证。
您应已收到与该程序一起的GNU通用公共许可证副本。如果没有,请参阅https://gnu.ac.cn/licenses/。