标签归档:教程

Git教程:本地代码推送至Git服务器

有时候我们不只是会在Git@OSC或者Github上新建项目,然后clone到本地,也有可能是本地已经用Git提交过,然后需要推送至服务器上,这边文章会告诉你该怎么做。

首先,我们需要生成SSH-KEY,在Git Bash中,输入ssh-keygen,然后输入保存地址以及密码。

生成的.pub文件,用记事本打开,复制里面的内容,添加到Git平台的SSH公钥中,具体方法参考各平台说明。

这里假设,你已有本地仓库,且已提交过,并且在Git平台上已创建项目,那么开始添加远程地址:

git remote add origin https://github.com/yourID/repoName.git

红色字代表你的远程仓库地址

然后如果Git平台给你智能生成过gitignore文件的话,那需要先用下面命令pull一次

git pull origin master

之后,就可以push了

git push -u origin master

这样,你本地的代码仓库就会同步至Git平台了

Unity3D制作2D魔塔游戏一:准备工作

《魔塔》是一种数值类益智游戏,最早在文曲星上玩过,一直特别喜欢。在开始学用Unity3D做游戏后,考虑做一个RPG游戏,于是准备从魔塔这个游戏入手。之所以选魔塔,是因为魔塔比较简单,涉及的系统相对较少,为RPG做准备,一步一步来。

在最开始制作的时候,使用的是Unity4.6,随后升级到了Unity5。我在蛮牛上看到过制作魔塔的视频教程,制作方法跟我的不一样,个人觉得我的方法也是有很多可取之处的。这次开源的版本是第二版,已经足够稳定,没有发现残余BUG,只是有一些功能并没有加入。在制作的过程中,我使用到了许多插件,我造的轮子不一定有他们的好,又何必自己造呢?另外,我的魔塔是竖屏的,可以在最上面放一条广告(虽然很多人吐槽,不过程序员也需要吃饭啊…Orz)。

首先介绍下需要用到的插件,我这里不提供下载,相信大家能够自己解决的。

  1. HOTWEEN

  2. plyGame中的DiaQ

  3. Rotorz Tile System

  4. EasyTouch

  5. EasySave

使用HOTWEEN来处理主角的移动,DiaQ来处理对话系统,Rotorz来制作格子地图,EasyTouch用来处理触摸操作,EasySave用来处理存档系统。

整个魔塔我主要分为了8个脚本来控制:

  1. 主角操作

  2. 动作管理

  3. 声音管理

  4. 对话管理

  5. 游戏数据管理

  6. 游戏逻辑管理

  7. 任务管理

  8. 地图管理

下一篇博客会从主角的操作开始,逐一介绍魔塔的制作方法。

素材地址:http://pan.baidu.com/s/1c04j8Q0  密码:9ix3

Emlog 5.2.0 For BAE 发布,支持BCS云存储附件上传(2013.12.03更新)

BAE 3.0 即将收费,本博客将迁移至我购买的国外主机,暂不继续更新。

下次更新时间:PCS API开放申请时,会更新一次。


本文为Emlog For BAE的专项更新文,新版本发布会更新本文。


转载请注明出处

作者:trlanfeng孤月蓝风

最新版本:5.2.0

本文链接:http://fengyu.name/?cat=coding&id=274


希望大家给点支持,点页面右上角的“”或“”啦~~~虽然不知道有什么用,不过希望大家都帮帮忙~~~


安装方法:下载代码包后,解压,修改config.php文件,填入需要的内容,重新打包为zip,通过BAE上传代码包,输入 域名+install.php安装即可。


★ 2013.12.03:

Emlog 5.2.0 For BAE 发布,支持附件上传,附件上传方式为:BCS云存储。

下载地址:百度网盘

版本说明:

+ 只需修改配置,无需修改代码,上传即可安装使用

+ 基于官方5.2修改,未添加任何恶意代码,功能完整

+ 支持附件上传并点击添加进文章(BCS方式)

预览地址:http://1.tremlog.duapp.com/

由于百度PCS暂停API申请,所以先做出了BCS版本,让有需要的童鞋可以先下载。

——————————————————————————

★ 2013.12.03:

PCS API安全升级中,暂停开启权限,预计12月初重新开放

现在考虑继续使用BCS,还是等待PCS,然后测试。

——————————————————————————

★ 2013.12.02:

+ 安装程序完成

+ 缓存修改完成

——————————————————————————

★ 2013.12.01:

待解决问题:

1.安装程序

2.后台缓存

3.模板缓存

4.PCS附件

——————————————————————————

旧版教程请参看:Emlog for BAE修改教程,支持附件上传(云存储)等

让taoCMS支持BAE附件上传的解决办法

taoCMS是一个非常小巧的CMS,但是功能却很强大, 在试用之后,便喜欢上了它。

taoCMS官方说明支持BAE,但是由于BAE上附件上传,需要引入自己的SDK,估计作者不想因为这个,影响taoCMS的大小,所以没有修改。

我的博客就是基于taoCMS,并搭建在BAE上的,已经解决了附件上传的问题,当然其他问题也解决了,改动了很多很多代码。但是我没有做过完整的CMS,改的也比较乱,所以还没准备把自己修改后的放出来提供下载。

但是,这里可以跟大家分享一下,如何修改taoCMS,使之支持BAE上的附件上传,也就是BCS,云存储。

1.首先,我们需要把BCS(百度云存储)的SDK放在taoCMS的 /include/Model/ 文件夹内

下载地址:http://bcs.duapp.com/bcs-api/bcs-sdk-php_1.2.tar.gz

2.打开 /include/Model/Upload.php 这个文件,在最后一个函数 saveFile 这个函数里(大概第127行),有一行

}elseif(RUNONBAE){

这个步骤里有一句

$err=’BAE不能上传’;

修改为:

//将文件上传至BAE云存储
$old_file = SYS_ROOT.$attach_dir.$filename;
$new_file = '/'.$attach_dir.$filename;
require_once 'bcs.class.php';
$host = 'bcs.duapp.com';
$ak = '';          //百度云存储的$ak
$sk = '';          //百度云存储的$sk
$bucket = '';      //百度云存储的bucket名称
$object = $new_file;        //这个是上传后文件的名字
$fileUpload = $_FILES['filedata']['tmp_name'];    //这个是需上传的文件的名字
$baiduBCS = new BaiduBCS ( $ak, $sk, $host );
$response = $baiduBCS->create_object ( $bucket, $object, $fileUpload );
if (! $response->isOK ()) {
	die ( "文件上传失败!" );
}
$bcs_url = $baiduBCS->generate_get_object_url($bucket, $object, $opt = array());
$msg = $bcs_url; 

3.打开admin/template/editcms.htm 文件,修改第38行:

<textarea name="content" id="content" style="width:100%;" class="xheditor {tools:’full’,width:’740′,…..

为:

<textarea name="content" id="content" style="width:100%;" class="xheditor {html5Upload:false,tools:’full’,width:’740′,……

也就是在 class="xheditor{}" 里面,添加上 html5Upload:false, 这一句,包括后面的逗号。

这个是因为,如果开启HTML5上传,不知道什么原因,BAE是上传不成功的,所以关掉HTML5上传就可以了。

改完这三个地方,恭喜你,taoCMS就可以上传附件了。

taoCMS在BAE上的实际使用中,还是会有些问题,例如,你要换模板,需要先在本地生成模板缓存,然后上传即可。

如何有什么问题,可以问下我这个屌丝IT男   >_<

祝大家使用taoCMS愉快。

Emlog for BAE修改教程,支持附件上传(云存储)等

Ps.2013.12.03  Emlog 5.2 For BAE 已经发布

请猛戳 -> Emlog For BAE 发布专文

本文不再更新,所有更新均发布在上面的地址中

——————————————-

Ps.2013.12.02  Emlog 5.2 BAE正在移植

Ps.2013.12.02  官方5.2已发布,BAE版正在开发中。本版将修改原来的BCS存储为PCS存储,能够更方便的管理上传的文件,敬请期待!

Ps:官方的Emlog 5.2即将发布,发布之后我会出一个完整的BAE版本,不再需要这么麻烦的修改代码。只修改几个配置就搞定,然后打包上传就可以了。敬请期待!

这个是我亲测的5.1.2完全正常,不知道为什么有很多朋友的都不行,由于5.2即将发布,所以暂不做更新,待5.2发布后再更新新版本。

本修改基于EMLOG 5.0.1版本,其他版本未测试。一般来说是不会出问题,除非EMLOG大版本升级。

PS:2013.07.24   教程更新,亲测5.1.2可用。

PS:2013.07.12   修改第二部分附件上传第41、42行的代码,之前不知道什么问题,也是个人疏忽,导致代码中多了两个单引号,造成无法上传,现已修正。感谢  VIP下页、下一 的反馈。

之前写过一篇文章,《BAE版的EMLOG已完工!》,后来EMLOG又升级了几次,外加微博通的同步一直搞不定,所以就暂时搁浅了。

现在我的博客(已经不能单纯的算博客了,算个网站),是我自己基于taoCMS二次开发的,对BAE的支持更好,也搞定了很多BAE上存在的问题。所以,EMLOG也就没继续用。现在这个博客稳定了,又有闲暇时间,所以跟大家分享一下,EMLOG for BAE的修改方法。

BAE上的EMLOG,最好是本地已经配置好的,然后将本地配置完成的打包上传即可。数据库也在本地备份,然后通过BAE的PMA导入。

先下载BCS(百度云存储,用于存储附件)的SDK放在admin目录中。

下载地址:http://bcs.duapp.com/bcs-api/bcs-sdk-php_1.2.tar.gz

一、本地安装EMLOG,并将一切设置OK,如原有博客,请将数据恢复到本地。

二、按照下面的提示修改文件(因版本升级,所以可能导致我写的行号不对,大家可以查找一下被替换的代码,来确定行号)

1.配置文件

在上传到BAE之前,需要先修改配置文件,因为BAE是不支持I/O读写的,所以需要在配置文件中手动加上BAE数据库信息的获取方式。

$dbname = '';        //填入自己的数据库名称
$host = getenv('HTTP_BAE_ENV_ADDR_SQL_IP');
$port = getenv('HTTP_BAE_ENV_ADDR_SQL_PORT');
$user = getenv('HTTP_BAE_ENV_AK');
$pwd = getenv('HTTP_BAE_ENV_SK');

之后,将下面的数据库信息其中四条修改为:

define('DB_HOST',$host.':'.$port);
define('DB_USER',$user);
define('DB_PASSWD',$pwd);
define('DB_NAME',$dbname);

这样,完成了最新本的数据库配置。

2.附件上传

打开admin目录下的attachment.php文件,第41行(5.1.2中为第43行)左右的代码:

//写入附件信息
$query="INSERT INTO ".DB_PREFIX."attachment (blogid,filename,filesize,filepath,addtime) values ($logid,'".$attach['name'][$i]."','".$attach['size'][$i]."','".$upfname."','".time()."')";

修改为:

$bcs_upfname = str_replace('..', '', $upfname);
//将文件上传至BAE云存储
require_once './bcs.class.php';
$host = 'bcs.duapp.com';
//bucket的ak
$ak = '';
//bucket的sk
$sk = '';
//bucket名称
$bucket = '';
$object = $bcs_upfname;    //这个是上传后文件的名字
$fileUpload = $upfname;    //这个是需上传的文件的名字
$baiduBCS = new BaiduBCS ( $ak, $sk, $host );
$response = $baiduBCS->create_object ( $bucket, $object, $fileUpload );
if (! $response->isOK ()) {
    die ( "文件上传失败!" );
}
$bcs_url = $baiduBCS->generate_get_object_url($bucket, $object, $opt = array());
//百度云附件信息写入数据库
$query="INSERT INTO ".DB_PREFIX."attachment (blogid,filename,filesize,filepath,addtime) values ($logid,'".$attach['name'][$i]."','".$attach['size'][$i]."','".$bcs_url."','".time()."')";

打开admin/views目录下的attlib.php文件,第32行代码:

$atturl = BLOG_URL.substr(str_replace('thum-','',$value['filepath']),3);

修改为

if (strpos($value['filepath'],'bcs.duapp.com') != false) { 
    $atturl = $value['filepath']; 
} else { 
    $atturl = BLOG_URL.substr(str_replace('thum-','',$value['filepath']),3);        
}

第41、42行(5.1.2中为45,46行)

$imgpath = "./views/images/fnone.gif";
$embedlink = "插入 ";

修改为:

if (strpos($value[‘filepath’],’duapp’) != false) {
$imgpath = $value[‘filepath’];
$ed_imgpath = urlencode($imgpath);
$embedlink = "插入 ";
} else {
$imgpath = "./views/images/fnone.gif";
$embedlink = "插入 ";
}


这一块儿网页输出显示的不正确,一直解决不了,只好放一张截图了。

3.修改博客地址,在EMLOG后台->设置->博客地址,然后打开根目录下的 init.php 文件,修改 define(‘BLOG_URL’, Option::get(‘blogurl’)); 这一行中后面的 Option::get(‘blogurl’) 为 ‘你的地址’ (地址两边加单引号,例如:http://tremlog.duapp.com/)


4.删除 content/cache 目录下,所有文件


三、所有修改完毕后,用本地的 Phpmyadmin 导出数据库(因为之前数据库已修改为BAE方式,所以不能通过后台导出),之后在BAE的 phpmyadmin 上导入。


四、BAE版EMLOG的伪静态设置

BAE上的伪静态设置,请参考:《BAE版EMLOG的伪静态设置

EMLOG在BAE上的修改基本就是这些了,如果发现有什么问题,也可以留言询问。