-
大小: 38.91MB文件類型: .rar金幣: 1下載: 0 次發(fā)布日期: 2023-07-17
- 語言: 其他
- 標(biāo)簽: FPSUnity3D??
資源簡(jiǎn)介
Unity3D 第一人稱射擊游戲 可聯(lián)機(jī) 源代碼
代碼片段和文件信息
//?本機(jī)角色腳本
using?System.Collections;
using?System.Collections.Generic;
using?UnityEngine;
public?class?Character?:?MonoBehaviour?{
????//?Use?this?for?initialization
????void?Start()?{
????????//?獲取攝像頭對(duì)象
????????mCamera?=?transform.Find(“Main?Camera“);
????????//?獲取右手對(duì)象
????????mRightHand?=?transform.Find(“RightHand“);
????????//?獲取槍聲播放組件
????????mGunAudio?=?transform.Find(“RightHand/Pistol“).GetComponent();
????????//?獲取火花效果
????????mFireEffect?=?transform.Find(“RightHand/Pistol/FireEffect“).GetComponent();
????????//?獲取網(wǎng)絡(luò)組件
????????mNetwork?=?transform.GetComponent();
????}
????//?Update?is?called?once?per?frame
????void?Update()?{
????????UpdateFire();
????????//?發(fā)送當(dāng)前狀態(tài)到服務(wù)端,然后服務(wù)端就會(huì)轉(zhuǎn)發(fā)給其他客戶
????????mNetwork.SendStatus(transform.position?transform.eulerAngles?
????????mCamera.eulerAngles?mRightHand.eulerAngles?_isShooted?_hp);
????????//?處理服務(wù)器發(fā)過來的數(shù)據(jù)包,數(shù)據(jù)包里裝著其他客戶的信息
????????ProcessPackage();
????}
????private?Transform?mCamera;
????private?Transform?mRightHand;
????private?AudioSource?mGunAudio;
????public?Gameobject?mPiece;???????//?開槍后撞擊產(chǎn)生的碎片
????private?ParticleSystem?mFireEffect;?????//?開槍后的火花
????private?bool?_isShooted;????//?判斷是否開了槍
????private?Network?mNetwork;???????//?網(wǎng)絡(luò)組件
????public?Gameobject?mEnemyCharacter;??//?其他客戶的實(shí)例
????private?Hashtable?_htEnemies?=?new?Hashtable();????//?其他客戶的控制腳本
????//?開槍
????private?void?UpdateFire()?{
????????if?(Input.GetButtonUp(“Fire1“))?{
????????????//?射擊音效與畫面
????????????PlayShotSound();
????????????//?播放火花效果
????????????PlayFireEffect();
????????????//?判斷射擊位置
????????????RaycastHit?hit;
????????????if?(Physics.Raycast(mCamera.position?mCamera.forward?out?hit?100))?{
????????????????//?被槍擊中的地方會(huì)有碎片彈出
????????????????DrawPieces(hit);
????????????}
????????????//?設(shè)置開槍判斷
????????????_isShooted?=?true;
????????}?else?{
????????????//?設(shè)置開槍判斷
????????????_isShooted?=?false;
????????}
????}
????//?播放槍聲
????private?void?PlayShotSound()?{
????????mGunAudio.PlayOneShot(mGunAudio.clip);
????}
????//?畫碎片
????private?void?DrawPieces(RaycastHit?hit)?{
????????for?(int?i?=?0;?i?5;?++i)?{
????????????Gameobject?p?=?Transform.Instantiate(mPiece);
????????????//?碎片撞擊到物體后的反彈位置
????????????Vector3?fwd?=?mCamera.forward?*?-1;
????????????p.transform.position?=?hit.point;
????????????p.GetComponent().AddForce(fwd?*?100);
????????????//?0.3秒后刪除
????????????Destroy(p?0.3f);
????????}
????}
????//?播放火花效果
????private?void?PlayFireEffect()?{
????????mFireEffect.Play();
????}
????//?人物變量
????private?int?_hp?=?100;
????//?受到傷害
????public?void?GetHurt()?{
????????_hp?-=?10;
????????if?(_hp?<=?0)?{
????????????//?復(fù)活
????????????Revive();
????????}
????}
????//?復(fù)活
????private?void?Revive()?{
????????_hp?=?100;
????????transform.position?=?new?Vector3(010);
????}
????//?處理數(shù)據(jù)包
????private?void?ProcessPackage()?{
????????Network.Package?p;
????????//?獲取數(shù)據(jù)包直到完畢
????????while?(mNetwork.NextPackage(out?p))?{
????????????//?確定不是本機(jī),避免重復(fù)
????????????if?(mNetwork.
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件???18999296??2017-01-12?05:09??FPS程序\FPS_release.exe
?????文件?????????18??2017-02-07?11:44??FPS程序\FPS_release_Data\app.info
?????文件??????24432??2017-02-07?11:44??FPS程序\FPS_release_Data\globalgamemanagers
?????文件??????20288??2017-02-07?11:44??FPS程序\FPS_release_Data\globalgamemanagers.assets
?????文件??????13348??2017-02-07?11:44??FPS程序\FPS_release_Data\level0
?????文件?????131232??2017-02-07?11:44??FPS程序\FPS_release_Data\level0.resS
?????文件??????15872??2017-02-07?11:44??FPS程序\FPS_release_Data\Managed\Assembly-CSharp.dll
?????文件?????293376??2017-01-12?02:43??FPS程序\FPS_release_Data\Managed\Mono.Security.dll
?????文件????2497024??2017-01-12?02:43??FPS程序\FPS_release_Data\Managed\mscorlib.dll
?????文件?????291328??2017-01-11?17:25??FPS程序\FPS_release_Data\Managed\nunit.fr
?????文件?????265728??2017-01-12?02:43??FPS程序\FPS_release_Data\Managed\System.Core.dll
?????文件????1069568??2017-01-12?02:43??FPS程序\FPS_release_Data\Managed\System.dll
?????文件????1232384??2017-01-12?02:43??FPS程序\FPS_release_Data\Managed\System.xm
?????文件???????7168??2017-01-12?04:50??FPS程序\FPS_release_Data\Managed\UnityEngine.Analytics.dll
?????文件????1379840??2017-01-12?05:03??FPS程序\FPS_release_Data\Managed\UnityEngine.dll
?????文件?????446052??2017-01-12?05:03??FPS程序\FPS_release_Data\Managed\UnityEngine.dll.mdb
?????文件?????252416??2017-01-12?04:50??FPS程序\FPS_release_Data\Managed\UnityEngine.Networking.dll
?????文件??????31744??2017-01-12?04:50??FPS程序\FPS_release_Data\Managed\UnityEngine.TestRunner.dll
?????文件?????244736??2017-01-12?04:50??FPS程序\FPS_release_Data\Managed\UnityEngine.UI.dll
?????文件??????58196??2017-01-12?01:21??FPS程序\FPS_release_Data\Mono\etc\mono\1.0\DefaultWsdlHelpGenerator.aspx
?????文件??????17258??2017-01-12?01:21??FPS程序\FPS_release_Data\Mono\etc\mono\1.0\machine.config
?????文件???????1605??2017-01-12?01:21??FPS程序\FPS_release_Data\Mono\etc\mono\2.0\Browsers\Compat.browser
?????文件??????60453??2017-01-12?01:21??FPS程序\FPS_release_Data\Mono\etc\mono\2.0\DefaultWsdlHelpGenerator.aspx
?????文件??????27625??2017-01-12?01:21??FPS程序\FPS_release_Data\Mono\etc\mono\2.0\machine.config
?????文件???????2618??2017-01-12?01:21??FPS程序\FPS_release_Data\Mono\etc\mono\2.0\settings.map
?????文件??????11686??2017-01-12?01:21??FPS程序\FPS_release_Data\Mono\etc\mono\2.0\web.config
?????文件?????311984??2017-01-12?01:21??FPS程序\FPS_release_Data\Mono\etc\mono\browscap.ini
?????文件???????1691??2017-01-12?01:21??FPS程序\FPS_release_Data\Mono\etc\mono\config
?????文件??????25817??2017-01-12?01:21??FPS程序\FPS_release_Data\Mono\etc\mono\mconfig\config.xm
?????文件????2115520??2017-01-12?05:17??FPS程序\FPS_release_Data\Mono\mono.dll
............此處省略1895個(gè)文件信息
評(píng)論
共有 條評(píng)論