伟巴Orme--边沿城市 ——生活在这个喧闹的城市,您可曾注意到城市的边沿
2008年7月24日  THURSDAY
2007-7-18幸福的脚丫预告片|变形金刚预告片|江南MV预告片
分类:关于本人时间:2007-7-18 15:20:09作者:伟巴Orme

节目非常精彩呀,今后我会为大家提供更加精彩的节目,大家一定要多多关注啊!

注意:一共有四个节目呦!大家看完了第一个千万不要错过第二.三.四个。呵呵!

+查看评论 (4)+发表评论+Trackback地址+Trackbacks (0)
2007-7-13flash播放器制作全过程
分类:关于本人时间:2007-7-13 9:21:05作者:伟巴Orme
工具:FLASHMX 2004+记事本

首先,先用记事本编辑一个XML文件,内容如下:

<?xml version="1.0" encoding="GB2312"?>
<data>
<song>
<title>A DISTANCE THERE IS</title>
<name>distance.mp3</name>
</song>
<song>
<title>LOVE IN DECEMBER</title>
<name>love.mp3</name>
</song>
<song>
<title>THANK YOU</title>
<name>thanku.mp3</name>
</song>
<song>
<title>ESTRANGED</title>
<name>estranged.mp3</name>
</song>
<song>
<title>NOTHING ELSE MATTERS</title>
<name>matters.mp3</name>
</song>
<song>
<title>HELLO LITTLE STAR</title>
<name>hello.mp3</name>
</song>
<song>
<title>DAS SCHWEIGEN</title>
<name>das.mp3</name>
</song>
<song>
<title>SHEETA'S DECISION</title>
<name>sheeta.mp3</name>
</song>
<song>
<title>BGM</title>
<name>bgm01.mp3</name>
</song>
<song>
<title>SHOW ME</title>
<name>showme.mp3</name>
</song>
</data>
title是歌曲的名字,而name是mp3的文件名,以后需要修改的话就按照格式修改或添加就行了,当然也可以用ASP,PHP之类的程序来生成...由于是个简单的东西,所以没用上ID3.也算偷懒吧,呵呵,要注意文件一定要和XML放在同个目录下,否则会出错.
当然,只要不嫌麻烦的话,你也可以在FLASH里多加个MP3路径,或是本地路径什么的.

做好了保存成list.xml,建立个music的目录,把MP3文件和XML文件丢里面,上一级目录就放FLASH吧.

抽根烟休息一会儿...To be continued...
大家看看这个图片,作为MP3的背景图,当然你有更漂亮或需要更多功能的也可以换进去.



我FLASH设置的大小为320*60,就比图片稍大一点点,让我们开始写AS吧!

Frame 1:

第一步:

//定义XML和数组
var myXML = new XML();
var mp3total = new Array();
var mp3name = new Array();
var mp3 = new Array();
//定义s为声音类
var s = new Sound();
//定义MP3和XML的路径
var url = "music/";
//定义歌曲ID,也就是第几第几首
var id = 0;
//定义已播放时间,在后面的播放/暂停按钮里会用得着的
var played = 0;
//定义停止按钮参数,判断是否未停止播放,也就是说key==true时暂停按钮可以按...(好像弄反了)
var key = true;
//定义暂停按钮参数,判断是否已经暂停播放
var paused = false;

定义完了上面的内容后,让我们进行下一步...

第二步:

//定义预读函数
function preloading() {
//给preload赋予enterframe事件,preload就是进度条,后面会给大家解释...
preload.onEnterFrame = function() {
//取得MP3的总字节数和已下载字节数
var loaded = s.getBytesLoaded();
var total = s.getBytesTotal();
//进度条显示的长度,取160的原因是因为最大长度有160...-___-b
//----- qhwa 注:用_xscale可以更简单、通用些
this._width = loaded / total * 160;
if (loaded == total) {
//下载完成后删除enterframe事件
delete this.onEnterFrame;
}
};
}


这里相信用不着做多少解释了...做过FLASH LOADING的朋友们应该都用过,这里只不过是把影片的LOADING换成MP3的LOADING而已

现在开始第三步:
//播放声音函数
function loadsound(x) {
//把已播放时间设置为0,用处上面说过了..-___-b
played = 0;
//为暂停和停止按钮变量重新赋值
paused = false;
key = true;
//这里重复s = new Sound()是为了让声音已播放的毫秒数(position)重置为0,我找不到更好的解决办法,还望大虾们指教...
s = new Sound();
//读取MP3,url上面定义过了,是MP3的路径,x是函数里的参数,这里的x代表歌曲的MP3名,后面的true是让声音以数据流的格式播放
s.loadSound(url + x, true);
//trackname是显示歌曲名的文本框,id已经被定义为歌曲的序列号,由于是从0开始的,所以在这里要+1,总不能让第一首显示为0吧...中间冒号里的内容是隔开序列号与MP3的曲名,你可以换成自己喜欢的符号.后面的mp3name[id]就是加载进数组里的MP3歌名了,下面一个函数里会做解释
trackname = (id + 1) + ". - " + mp3name[id];
//开始播放音乐...
s.start();
//onSoundComplete的作用是声音停止播放时调用后面的函数
s.onSoundComplete = function() {
//又是个条件表达式,解释起来真烦...这东西一般是懒人才用的,比如说我...-___-b,写成if大家会容易看明白些...这里是让判断问号(?)前面的(id == mp3total.length - 1)是否成立,成立的话id赋值为0,否则id赋值为id + 1
id = (id == mp3total.length - 1) ? 0 : (id + 1);
//执行loadsound函数,也就是现在的函数再执行一次,小括号里面参数是给函数里的x赋值为mp3[id],也就是歌曲名,mp3这个数组在下面解释...
loadsound(mp3[id]);
//大括号就用不着解释了吧?
};
//mix就是在右边乱蹦乱跳的东西,现在我没办法拿到MP3各个频率的音高,只能用个假的来代替,呵呵
mix.gotoAndStop(1);
//执行preloading函数
preloading();
}

打了好多字哦,有点累了,写完下面的再休息
第四步:

//这个这个...大家还是翻翻以前的帖子或是看看帮助吧,反正在FLASH里用XML基本都会用到这两个东西
myXML.ignoreWhite = true;
System.useCodepage = true;
//XML开始读取的时候执行下面的函数
myXML.onLoad = function(success) {
if (success) {
//读取成功就开始分析XML,parseXML函数在下面解释...
parseXML();
} else {
//这个..我不说了好不好?
trace("载入失败");
}
};
//分析XML
function parseXML() {
//取得MP3的总数,关于这方面的资料大家翻翻以前的帖子或是到置顶帖里能找得到的,找不到你们问版主好了
mp3total = myXML.firstChild.childNodes;
//建立for循环
for (var i = 0; i < mp3total.length; i++) {
//把MP3的歌曲名放到mp3name的数组里
mp3name[i] = mp3total[i].childNodes[0].firstChild.nodeValue;
//和上面道理差不多,只不过这里是放mp3的文件名
mp3[i] = mp3total[i].childNodes[1].firstChild.nodeValue;
}
//.........(你就当我哑了)
play();
}
//读取XML
myXML.load(url + "list.xml");
stop();

Frame N
这里也就是随便第几祯都行了,你喜欢弄多长就弄多长...中间可以随便加些乱七八糟效果什么的

开始定义按钮...我这里一共放了四个按钮,btn1,btn2,btn3,btn4,分别是上一首,停止,播放/暂停,下一首,把它们放到合适的地方,图上画着的,看不懂画什么的多研究下其他播放器.

开始给它们加上鼠标事件...

上一首的按钮
btn1
btn1.onPress = function() {
//和前面一样是一个条件表达式,大家看看前面的解释
id = id == 0 ? mp3total.length - 1 : id - 1;
//好象上面也解释过了...
loadsound(mp3[id]);
};

停止按钮
btn2
btn2.onPress = function() {
//判断这个按钮是否可以按下去.呵呵,可以按的话,就执行里面的东西
if (key) {
//停止声音,不停的话也不叫停止按钮了...
s.stop();
//trackname里面显示STOP
trackname = "STOP";
//让mix停下来不乱跳
mix.gotoAndPlay(1);
//前面解释过了...
played = 0;
key = false;
s = new Sound();
}
};

播放/暂停按钮,也是要写最多东西的.哭~`和上面相同或类似的我就不废话了..早点写完早点睡觉
btn3
btn3.onPress = function() {
if (key) {
if (paused) {
//从获取已播放多少的地方开始播放,由于played的单位是毫秒,所以在这里要除以1000,后面就是循环了...
s.start(played / 1000, 1);
//略...
trackname = (id + 1) + ". - " + mp3name[id];
mix.gotoAndStop(1);
paused = false;
} else {
//给played赋值,也就是已播放了多少毫秒
played = s.position;
//略...
s.stop();
mix.gotoAndPlay(1);
trackname = "PAUSED";
paused = true;
}
} else {
loadsound(mp3[id]);
}
};

下一首按钮
btn4
btn4.onPress = function() {
id = id == mp3total.length - 1 ? 0 : id + 1;
loadsound(mp3[id]);
};

四个按钮都放上去了,如果要为播放器加个时间显示的话,那我们需要加上下面的代码...

//执行loadsound函数
loadsound(mp3[id]);
//定义几个变量
var time1 = time2 = time3 = time4 = 0;
onEnterFrame = function () {
//又是头疼的条件表达式...给大家解释一下几个命令好了...(偷懒)...position前面我应该说过了吧,除以60000也就是除以1000再除以60,为什么要这么做呢?因为时间是60进制的,把毫秒换成秒的单位后还要换成时间单位,int()是取整的意思,也就把里面的东西化成整数,当前面的条件小于10的时候,我们不能让时间这么显示吧?
//如: 12:1,所以要加个0在前面.
//duration就是歌曲的总长度了.
//百分比符号在这里的作用可不是百分比哦,是取余数的意思,如 9%5=4
//%60也就是除以60后取它的余数了,肯定不会超过60,用来做秒正合适
time1 = int(s.position / 60000) < 10 ? "0" + int(s.position / 60000) : int(s.position / 60000);
time2 = int(s.position / 1000 % 60) < 10 ? "0" + int(s.position / 1000 % 60) : int(s.position / 1000 % 60);
time3 = int(s.duration / 60000) < 10 ? "0" + int(s.duration / 60000) : int(s.duration / 60000);
time4 = int(s.duration / 1000 % 60) < 10 ? "0" + int(s.duration / 1000 % 60) :
int(s.duration / 1000 % 60);
//四个变量都好了以后,放到名为timeline的文本框里,这个文本框大家找找,就在歌曲名上面
timeline = time1 + ":" + time2 + " - " + time3 + ":" + time4;
};
stop();

呼...主要的东西都写完了,下面我们来处理音量条,进度条和右边乱跳的东西...

To be continued...

我们先从VOLUME开始,也就是音量控制..新建个MC,随便怎么命名都好,然后在里面写AS

VOLUME
//定义两个变量,l就是left的简写,t就是top了
var l = this._x;
var t = this._y;

btn.onPress = function() {
//点击的时候开始拖...这个MC,鼠标中心点定义成false,左边为l-146,因为这里的空间只有146这么宽,因为不让它上下移动,所以最高范围是t,右边也就是现在的位置定义为l,不让它超出现在的范围,最低范围也是t
startDrag(this._parent, false, l - 146, t, l, t);
};

btn.onRelease = btn.onReleaseOutside = function () {
stopDrag();
};

onEnterFrame = function () {
//给vol变量赋值,这个公式大家研究一下看看,呵呵,挺简单的
vol = (this._x - l) / 146 * 100 + 100;
//设置上一级里的声音大小
_parent.s.setVolume(vol);
};

完成后把它拖到主场景里就用不着管它了,不过要注意放的位置哦

进度条:preload
其实只是个灰色的MC,和上面的格子状的东西做了个MASK,主场景里的AS控制了这里的长度

频率和音高:mix
这只是个假的东西,因为现在FLASH还取不到音高的各种数值,随便画几个运动的MC,和上面的点阵状的东西做个MASK也就能骗骗人了,不过我们要在这里做个停止和播放时不同的动作.

在mix里的Frame1放上能动的MC,MC的动作在MC里完成,也就是做无规律的上下运动,看起来有点以假乱真的感觉就好,注意有动作的MC只保留在Frame1.

后面就用个大点的白的MC来完成吧,移动到点阵状那东西的最上方然后下降,在下降过程中渐变成红色就OK.

最后把这个东西拖到主场景合适的位置里,命名为mix就完成工作了.

现在大家可以试试这个播放器的效果,也可以结合其他的素材等做出更漂亮的播放器来.需要更强大功能的话大家要研究一下哦,比如在FLASH里自由添加删除歌曲的功能,就是用合适的事件来增减各个数组里的东西和进行排序就OK了,拖动进度就是用position和duration取得时间来定义长度和实现.其他更多的,还有待于大家的想象,要相信自己的能力,多动手的话会提高得很快的
+查看评论 (0)+发表评论+Trackback地址+Trackbacks (0)
2007-7-7人类活着的恶意文化
分类:关于本人时间:2007-7-7 17:59:30作者:伟巴Orme

满清十大酷刑是哪十大


剥皮
剥的时候由脊椎下刀,一刀把背部皮肤分成两半,慢慢用刀分开皮肤跟肌肉,像蝴蝶展翅一样的撕开来……最难的是胖子,因为皮肤和肌肉之间还有一堆油,不好分开。
另外还有一种剥法,不知道可信度多少。方法是把人埋在土里,只露出一颗脑袋,在头顶用刀割个十字,把头皮拉开以后,向里面灌水银下去。由于水银比重很重,会把肌肉跟皮肤拉扯开来,埋在土里的人会痛得不停扭动,又无法挣脱,最后身体会从从定的那个口「光溜溜」的跳出来,只剩下一张皮留在土里……
皮剥下来之后制成两面鼓,挂在衙门口,以昭炯戒。最早的剥皮是死后才剥,后来发展成活剥。

腰斩
由于腰斩是把人从中间切开,而主要的器官都在上半身,因此犯人不会一下子就死,斩完以后还会神智清醒,得过好一段时间才会断气。
明成祖杀方孝孺就是用腰斩,传说一刀下去之后,方孝孺还以肘撑地爬行,以手沾血连书「篡」字,一共写了十二个半才断气。

车裂
即五马分尸,很简单,就是把受刑人的头跟四肢套上绳子,由五匹快马拉着向五个方向急奔,把人撕成六块。记得商鞅就是受五马分尸之刑。
要把人的头跟四肢砍下来都得花不少力气,更何况是用拉扯的。而受刑人身受的苦处更可想而知。真到撕开的时候,恐怕受刑人已经不会觉得痛苦了。痛苦的是正在拉扯的时候。

俱五刑
把砍头,刖,割手,挖眼,割耳和一,即「大卸八块」,通常是把人杀死以后,才把人的头、手脚剁下来,再把躯干剁成三块。
汉高祖死后,吕后把他的宠妾如意夫人抓来,剁去手脚,割掉鼻子耳朵舌头,眼睛挖出,丢在猪圈里喂养,取名「人彘」.结果吕后自己的儿子看到,给活活吓死……

凌迟
最早是把人杀死之后再剁成肉酱,称为「醢」,受过此刑的记得有子路,还有周文王的长子伯邑考。
后来发展更加精细,目的还是要让犯人受最大的痛苦,因此不但是活的时候施刑,还要求受刑人必须身受多少刀以后才死。
据说发展到后来,每次凌迟要由两个人执行,从脚开始割,一共要割一千刀,也就是要割下一千片肉片才准犯人断气。而据说犯人若未割满一千刀就断了气,执行人也要受刑。而受此刑最有名的人就是大太监刘谨,听说一共割了三天才让他断气……
而最惨的是明末抗清名将袁崇焕,因为崇桢皇帝中了反间计,误以为他通敌卖国,判他凌迟处死,行刑前以鱼网覆身(让肌肉突出以便下刀),游街示众,被北京城无知的民众冲上前去,把他的肉一块一块咬下来……那种心理的痛恐怕远高于生理的痛。
这是明清的正式刑之一。

贡献时间:2007-07-7 20:19:42


缢首
在国外,绞刑是普遍使用的刑罚。
中国人的绞刑是用弓弦缢杀...就是把弓套在受刑人脖子上,弓弦朝前,行刑人在後面开始旋转那张弓,弓越转越紧,受刑人的气就越来越少,最后终于断气……
岳飞父子就是这样死在风波亭,(因为他是功臣,不能斩首,要留全尸)而明末流亡的桂王也是这样给吴三桂亲手缢杀……

烹煮
即「请君入瓮」那是唐朝时代,武则天当皇帝的时候,朝中有位酷吏叫来俊臣,崇尚严刑峻法,对不肯招供的犯人往往以酷刑对待。方法是找个大瓮,把人塞进去,然后在瓮下面用柴火加热。温度越来越高,受刑人也越来越受不了,如果不肯招供的话,往往就被烧死在瓮里……后来武则天听说了这件事,就把来俊臣找来,问他犯人不肯招供要怎么办?来俊臣很得意的把这个方法说了出来,武则天就淡淡的说了句:「则请君入瓮」,把来俊臣烧死……

宫刑
司马迁就是受了宫刑,才会写出史记,也才会在「报任少卿书」里写出「身直为闺阁之臣」这样的句子。中国人的阉割可讲究了。首先要拿绳子把小弟弟绑起来(包括子孙袋)让血液不流通,自然坏死,后拿利刃一刀子割掉(全部喔!不是只有小弟弟)。割掉了以后拿香灰一盖,止血,还得拿根鹅毛插在尿道里。等过了几天把鹅毛拿掉,如果尿得出来,阉割就算成功了。要是尿不出来,那个人就算废了,大概最后会死于尿毒症吧.所以如果是要阉来当宦官的话,最好趁年纪还小就阉掉,年纪大了危险性高很多。
此刑常被贵族冲抵死刑。相对的女性为幽闭。

刖刑
关于刖刑,大家的说法不太一样。有人说是把膝盖以下都砍掉,也有人说是把膝盖骨削掉,以后者比较可信。总之,刖刑是一种类似截肢的酷刑。
战国时代,孙膑受师兄陷害,受的就是刖刑。听说他名字本来叫孙宾,受刑之后,才改为孙「膑」。
如果是把膝盖骨削掉,大腿小腿之间失去了保护,这个人可能连站都站不起来,所以稗官野史上说,孙膑受刑之后,上阵打仗连骑马都没办法,必须要坐车(马车或人力车)。

插针
用针插手指甲缝。常用于女囚。

活埋
活埋是战争时常用的手段。因为省力,速度也快。
战争里的活埋,都是叫战俘自己挖坑,有时会先杀死俘虏再把他们推下去,但时间不够的时候(或是要省子弹时),就直接把他们推进去以后盖土。中国的酷刑中,活埋古已有之。不过没听过有什么名人受过这种刑罚。比较狠一点的,会把人直挺挺的埋在土里,只露出一个头,然后开始凌虐……

鸩毒
鸩毒大概算是酷刑之中唯一比较人道的方式……
中国古代的毒药中,最有名的应该是「鸠」这种毒药,成语中的「饮鸠止渴」便是源自于此。
常用于赐死情况。

棍刑
即木桩刑.这里要说的棍刑,不是用棍子打人。这里说的棍刑,是拿根棍子直接从人的嘴或肛门里插进去,整根没入,穿破胃肠,让人死得苦不堪言。
正史上没有看过用这种刑罚的记载,不过金庸小说「侠客行」里有提到,还给这种酷刑起了个美名叫「开口笑」。

锯割
把人用铁锯活活锯死,其惨状似乎与凌迟、剥皮也在伯仲之间,难怪在地狱酷刑中,就专门有把人锯开的酷刑。然而,锯死活人不仅在传说的地狱中存在,在人间也是确确实实存在着的。据《三国志.吴书.孙皓传》记载,三国时,吴帝孙皓的爱妾指使近侍到集市上抢夺百姓的财物,主管集市贸易的中郎将陈声原是孙皓的宠臣,他捕获抢劫者绳之以法。爱妾告诉孙皓,孙皓大怒,假借其他事端逮捕陈声,命里武士而烧红的大锯锯断陈声的头,把他的尸体投到四望台下。

断椎
当一个人对另一个人仇恨之极时,往往会想到要打断他的脊椎骨。打断脊椎骨确实是一种很解气的行为,因为人的脊梁骨若是断了,他也就一命呜呼了。在中国历史上,断椎也是一种很重要的酷刑。据《商君书.赏刑篇》载,春秋时姬重耳打算明文规定刑律,使国内百姓人人守法,就和大夫们一同商议。姬重耳的著名朝臣颠颉很晚才到,有人认为颠颉有罪,应该给以处罚。于是,姬重耳批准,将颠颉断椎处死。晋国的士大夫们都非常害怕,他们说:颠颉跟随姬重耳流亡列国十九年,功劳很大,现在偶尔有小过尚且受到如此严厉的刑罚,何况我们哪?从此人人畏刑守法。


灌铅

在佛教关于阎罗的故事中,有阎罗黑白二相的说法,白相即为地狱之主,有百官所命,美女围侍;黑相即每天有两个时辰,要受铜汁灌肠之苦。与此相似,人间有灌锡或灌铅的酷刑。锡的熔点是摄氏二三二度,铅的熔点是摄氏三二七点四度,无论灌锡或灌铅都能把人烫死。而且溶化的锡或铅一入肚腹就会凝固成硬块,这种重金属的坠力也能致人死命。

汉代厂川王刘去的王后阳城昭信妒忌而暴虐。刘去宠爱另一位名叫荣爱的美姬,多次和她一块饮酒,昭信妒性大发,就向刘去说:“荣爱看人时,神色有些不正常,大概是和谁有私情”。刘去信以为真,他见荣爱正在给他绣衣领上的花纹,就一怒之下夺过衣服投进火中烧掉了。荣爱见刘去生气,非常害怕,投井寻死,刘去命令人把她捞出来,不幸没有死。刘去杖责荣爱,要她招认私情,荣爱受刑不过,胡乱说出和医生有奸情。刘去越发恼怒,就把荣爱绑在柱子上,用烧红的尖刀剜掉她的两只眼珠,再割下她的两条大腿上的肉,最后用溶化的铅灌入她的口中,这样一直把荣爱摧残至死。

梳洗

这里说的梳洗并不是女子的梳妆打扮,而是一种极为残酷的刑罚,它指的是用铁刷子把人身上的肉一下一下地抓梳下来,直至肉尽骨露,最终咽气。梳洗之刑的真正发明者是朱元璋,据沈文的《圣君初政记》记载,实施梳洗之刑时,刽子手把犯人剥光衣服,裸体放在铁床上,用滚开的水往他的身上浇几遍,然后用铁刷子一下一下地刷去他身上的皮肉。就像民间杀猪用开水烫过之后去毛一般,直到把皮肉刷尽,露出白骨,而受刑的人等不到最后早就气绝身亡了。梳洗之刑与凌迟有异曲同工之妙。据《旧唐书.桓彦范传》记载,武三思曾派周利贞逮捕桓彦范,把他在竹槎上曳来曳去,肉被尽,露出白骨,然后又把他杖杀。

+查看评论 (0)+发表评论+Trackback地址+Trackbacks (0)
www.orme.cn边沿城市
最新留言
幸福的脚丫预告片|变形金刚……
flash播放器制作全过程
人类活着的恶意文化
万年历
最新评论
郁儿:我还以为有好多张呢,就这么几张啊。讨厌,你和谁去的!!!!
一只红酒杯:视频怎么传上去的?
还有别的吗?:你什么时候在更新呀?
踏雪:我也回多多关注的。真的很不错!
发表留言
署名:记住我
主页:
标题:
类别:
内容:
站点统计
文章总数:3
评论总数:11
引用总数:0
访问统计:5146
网站名称:伟巴Orme--边沿城市
发表您的评论:
署名:记住我
主页:
内容: