日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

基于unity的2D横版游戏开发日志 小结

發(fā)布時間:2023/12/3 编程问答 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 基于unity的2D横版游戏开发日志 小结 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

前言

說是基于unity的2D橫版游戲,實際上只是一個初學(xué)unity與C#新人的練手Demo,目前還處于半成狀態(tài)。美術(shù)資源方面全部出自unity免費資源,經(jīng)過自己的小修,大致拼出了一個游戲。代碼方面,僅僅初識C#語法,此前從未接觸過面向?qū)ο缶幊痰奈?#xff0c;顯然寫出來的東西顯然不堪入目,問題包括但不限于:1.未遵守命名規(guī)范。2.未領(lǐng)會面向?qū)ο缶幊痰乃枷?#xff0c;代碼復(fù)用隨處可見。3.代碼思路及其不清晰,動畫狀態(tài)轉(zhuǎn)換判斷一半靠動畫機參數(shù),一半靠代碼里的if else(再三確認.jpg)。4.總體架構(gòu)沒想好,想到哪寫哪,beAttackBox滿足不了要求寫個beAttackBoxOfEnemy,還不行就beAttackBoxOfBoss,看架勢如果寫完整個游戲,要寫上千個腳本。5.維護性極差,腳本功能縱橫交錯,出了問題現(xiàn)在的我能解決,過一個月就只有上帝能解決了。
總而言之,這段小結(jié)僅出于記錄自己黑歷史的目的,冒著榮登知乎“你見過最爛的代碼是怎樣的”這一問題榜首的風(fēng)險發(fā)布,不敢勞煩各位大佬斧正,只希望大伙就看個樂呵,盡量不要進行人身攻擊,以下是展示部分。
分割線

游戲展示

由于還有有關(guān)游戲?qū)С龇直媛实膯栴}尚未解決,展示僅在編譯器中進行。
1.近戰(zhàn)敵人演示

2.遠程敵人演示

3.boss戰(zhàn)(自己寫的boss都能過不了?)

部分代碼展示

boss1AI

//bossAI形式不同于小怪enemyAI,不具有普適性。 //boss1行動模式用自然語言描述如下: //在場景中,boss一直處于戰(zhàn)斗狀態(tài),以若干秒為一個周期,根據(jù)所設(shè)計的概率隨機選擇一個符合條件(與玩家的距離、自身血量所決定的階段、技能冷卻情況)的 //行動(發(fā)動某攻擊,接近玩家,遠離玩家),在完成行動后,進入后搖時間,后搖結(jié)束后進入下一周期,在受擊動畫完成后若干秒,立刻進入下一個周期。 //行動并不僅限于一個動畫,可以考慮兩個動畫進行組合以實現(xiàn)連招。boss子物體包含若干個范圍盒,按由外到內(nèi)的順序排列,每進入一個范圍盒,可隨機選擇的動作增加。 //由外到內(nèi),增加的可選擇動作為: //1.接近玩家。 //2.遠離玩家、發(fā)動技能跳斬attack5(僅在該范圍盒)、發(fā)動技能突刺attack2(二階段新增技能旋轉(zhuǎn)攻擊attack4,隱身突襲attack3)。 //3.普通攻擊attack1、擊退踢腿attack6(后接突刺或跳斬)。 //具體數(shù)值見boss1Const/*其余說明:1.boss面向改變不屬于行動,于等待階段進行。* 2.當血量低于50時,進入二階段,立即進行三次隱身突襲attack3,并減少單個周期的時間以實現(xiàn)行動后搖減少,加速敵人攻擊。* 3.一定時間內(nèi)受擊超過一定次數(shù)時,boss會踢腿擊退接突刺或跳斬的連招* * */ using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.SceneManagement;public class boss1AI : MonoBehaviour {static public float HP;public enum BossState { range1, range2, range3 };//public BossState bossState = BossState.range1;public AnimationCurve jump;public AudioSource attack2;private Animator ani;private SpriteRenderer spr;private Rigidbody2D rid;private GameObject player;private bool isIdle;private float animationLength;private int[] moving=new int[10000];//用于記錄boss行動的數(shù)組private int i = 0;private float waitingTime = 0;//后搖計時器private float movingTime = 0;//行動計時器private float attack3CD = 0;//特殊技能attack3計時器private int movingNumble = 0;//隨機數(shù),用于決定boss的下一步行動private int attack3Times = 3;//attack3技能單詞釋放次數(shù)private float jumpTime=0;// Start is called before the first frame updatevoid Start(){ani = gameObject.GetComponent<Animator>();spr = gameObject.GetComponent<SpriteRenderer>();rid = gameObject.GetComponent<Rigidbody2D>();player = GameObject.FindGameObjectWithTag("Player");//判斷動畫狀態(tài)機播放的動畫是否為Idle//引用組件HP = boss1Const.maxHP;}// Update is called once per frameprivate void FixedUpdate(){animationLength = ani.GetCurrentAnimatorStateInfo(0).length;//獲取當前播放動畫長度if (waitingTime >= boss1Const.waitingTime){if (ani.GetBool("isIdle") == true){roll:switch (bossState){case BossState.range1:movingNumble = Random.Range(0, 15);//生成一個0到14之間的隨機數(shù)(包含),數(shù)字大小決定了移動距離break;case BossState.range2:movingNumble = Random.Range(0, 60);//生成一個0到59之間的隨機數(shù)(包含)15~34為跳斬,35-59為突刺,進入2階段后,單數(shù)正常判定,雙數(shù)為旋轉(zhuǎn)攻擊,隱身突襲為特殊技能,進入2階段每5個循環(huán)釋放一次break;case BossState.range3:movingNumble = Random.Range(35, 120);//生成一個0到119之間的隨機數(shù)(包含)60~104為普攻,105~119為擊退接突刺(或跳斬)break; }//處于待機狀態(tài)且不處于后搖時間中時,roll點決定boss下一步行動if (attack3CD <= 0 && (ani.GetInteger("attackingNumber") == 0 || ani.GetInteger("attackingNumber") == 3) && HP <= 0.5 * boss1Const.maxHP){moving[++i] = 3;}else if (movingNumble >= 0 && movingNumble < 15)//接近玩家{moving[++i] = 0;}else if (movingNumble >= 15 && movingNumble < 35){if (HP <= boss1Const.maxHP * 0.5 && movingNumble % 2 == 0)//旋轉(zhuǎn)攻擊(二階段時){moving[++i] = 4;}else//跳斬{moving[++i] = 5;}}else if (movingNumble >= 35 && movingNumble < 60){if (HP <= boss1Const.maxHP * 0.5 && movingNumble % 2 == 0)//旋轉(zhuǎn)攻擊(二階段時){moving[++i] = 4;}else//突刺{moving[++i] = 2;}}else if (movingNumble >= 60 && movingNumble < 105)//普通攻擊{moving[++i] = 1;}else if (movingNumble >= 105 && movingNumble <= 120){moving[++i] = 6; }//根據(jù)movingNumble確定下一步行動if(moving[i-1]==6){if(i%2==0){moving[i] = 2;}else{moving[i] = 5;}}//查看上一步行動,若為踢腿,則根據(jù)隨機數(shù)指定下一步行動為突刺或跳斬if (i >= 2) {if (moving[i] == moving[i - 1] && moving[i] == moving[i - 2] && moving[i] != 3) {i--;goto roll;}}//查看即將進行的行動,若重復(fù)兩次以上,重新roll點決定行動}if (HP <= 0.5 * boss1Const.maxHP) {attack3CD -= Time.deltaTime;}//特殊技能冷卻時間改變switch(moving[i]){case 0:doWalk(movingNumble);break;case 1:doAttack1();break;case 2:doAttack2();break;case 3:doAttack3();break;case 4:doAttack4();break;case 5:doAttack5();break;case 6:doAttack6();break;}}else if(HP>0){doWait();}else{doDestroy();}//}void doWait(){waitingTime += Time.fixedDeltaTime;//累加后搖計時器doChangeFacing();//旋轉(zhuǎn)面向 }void doWalk(float velocity){ani.SetBool("isIdle", false);ani.SetBool("isWalking", true);movingTime += Time.fixedDeltaTime;if (movingTime > animationLength){waitingTime = boss1Const.waitingTime-boss1Const.waitingTimeAfterWalk;movingTime = 0;ani.SetBool("isWalking", false);ani.SetBool("isIdle", true);}transform.Translate(Vector2.right * Time.fixedDeltaTime * (velocity / 60 + 0.25f) * boss1Const.walkSpeed, Space.Self);//接近玩家一段距離}void doAttack1(){ani.SetBool("isIdle", false);ani.SetInteger("attackingNumber", 1);movingTime += Time.fixedDeltaTime;if (spr.sprite.name == "attack-A5" || spr.sprite.name == "attack-A6" || spr.sprite.name == "attack-A7"){doMove(1.5f);}//根據(jù)動畫播放進度進行相匹配的位移if (movingTime > animationLength){waitingTime = boss1Const.waitingTime - boss1Const.waitingTimeAfterAttack1;movingTime = 0;ani.SetInteger("attackingNumber", 0);ani.SetBool("isIdle", true);}}//普攻void doAttack2(){ani.SetBool("isIdle", false);ani.SetInteger("attackingNumber", 2);movingTime += Time.fixedDeltaTime;if(spr.sprite.name=="attack-B4"&& attack2.isPlaying == false){attack2.Play(); }if(spr.sprite.name=="attack-B3"){doChangeFacing();}if (spr.sprite.name == "attack-B4"||spr.sprite.name=="attack-B5" ){doMove(4f);}//根據(jù)動畫播放進度進行相匹配的位移if (movingTime > animationLength){waitingTime = boss1Const.waitingTime - boss1Const.waitingTimeAfterAttack2;movingTime = 0;ani.SetInteger("attackingNumber", 0);ani.SetBool("isIdle", true);}}//突刺void doAttack3(){ani.SetInteger("attackingNumber", 3);ani.SetBool("isIdle", false);ani.SetBool("isWalking", false);movingTime += Time.fixedDeltaTime;if (spr.sprite.name == "attack-C1"){spr.color = Color.Lerp(new Color(1, 1, 1, 1), new Color(1, 1, 1, 0), movingTime / animationLength * 3f);}else if(spr.sprite.name!="attack-C1"&&spr.sprite.name!="attack-C2"){spr.color = Color.Lerp(new Color(1, 1, 1, 0), new Color(1, 1, 1, 1), (movingTime - 0.5f * animationLength) * 3f);}//實現(xiàn)隱身效果if (spr.sprite.name=="attack-C2"){doFlash(player.transform.position - (Vector3.right + Random.Range(-1, 1) * Vector3.right*2) * 0.5f + Vector3.up * 0.5f);doChangeFacing();//隨機瞬移至玩家身邊并調(diào)整面向}if(spr.sprite.name=="attack-C7"||spr.sprite.name=="attack-C8"){doJump(boss1Const.jumpHeight*0.5f);}if (movingTime > animationLength){if(attack3Times>1){attack3Times--;movingTime = 0;waitingTime = boss1Const.waitingTime - boss1Const.waitingTimeAfterAttack3;ani.SetInteger("attackingNumber", 0);ani.SetBool("isIdle", true);}else{attack3Times = 3;movingTime = 0;waitingTime = boss1Const.waitingTime - boss1Const.waitingTimeAfterAttack3;attack3CD = boss1Const.attack3CD;ani.SetInteger("attackingNumber", 0);ani.SetBool("isIdle", true);}}}//隱身突襲void doAttack4(){ani.SetInteger("attackingNumber", 4);ani.SetBool("isIdle", false);movingTime += Time.fixedDeltaTime;if(spr.sprite.name!="attack-D1"&&spr.sprite.name!="attack-D2"&&spr.sprite.name!="attack-D12"&&spr.sprite.name!="attack-D7"){doMove(4f);}if(spr.sprite.name=="attack-D7"){doChangeFacing();}if (movingTime > animationLength){waitingTime = boss1Const.waitingTime - boss1Const.waitingTimeAfterAttack4;movingTime = 0;ani.SetInteger("attackingNumber", 0);ani.SetBool("isIdle", true);}}//旋轉(zhuǎn)攻擊void doAttack5(){ani.SetInteger("attackingNumber", 5);ani.SetBool("isIdle", false);movingTime += Time.fixedDeltaTime;if(spr.sprite.name == "jump-attack-1" || spr.sprite.name== "jump-attack-2"||spr.sprite.name== "jump-attack-3"){doJump(boss1Const.jumpHeight);}if (spr.sprite.name != "jump-attack-8"){doMove(Random.Range(2.5f, 2.8f));}//根據(jù)動畫播放進度進行相匹配的位移if (movingTime > animationLength){waitingTime = boss1Const.waitingTime - boss1Const.waitingTimeAfterAttack5;movingTime = 0;ani.SetInteger("attackingNumber", 0);ani.SetBool("isIdle", true);}}//跳斬void doAttack6(){ani.SetInteger("attackingNumber", 6);ani.SetBool("isIdle", false);movingTime += Time.fixedDeltaTime;if (spr.sprite.name == "kick-3" || spr.sprite.name == "kick-4"){doMove(4f);}if (movingTime >= animationLength){movingTime = 0;waitingTime = boss1Const.waitingTime - boss1Const.waitingTimeAfterAttack6;ani.SetInteger("attackingNumber", 0);ani.SetBool("isIdle", true);}}//踢腿void doMove(float velocity){transform.Translate(Vector2.right * Time.fixedDeltaTime*velocity , Space.Self);}//位移void doChangeFacing(){if (player.transform.position.x <= transform.position.x){transform.rotation = Quaternion.Euler(0, 180, 0);}else{transform.rotation = Quaternion.Euler(0, 0, 0);}}//改變面向void doJump(float jumpHeight){jumpTime += Time.fixedDeltaTime;transform.Translate(new Vector3(0, jump.Evaluate(jumpTime) - jump.Evaluate(jumpTime - Time.fixedDeltaTime)) * jumpHeight, Space.World);if(jumpTime>=0.5f){jumpTime = 0;}}//跳躍void doFlash(Vector3 Position){transform.position = Position;}//閃爍void doDestroy(){ani.SetBool("isDead", true);movingTime += Time.deltaTime;if (movingTime >= animationLength){StartCoroutine(reStart());}}IEnumerator reStart(){yield return new WaitForSecondsRealtime(3.0f);SceneManager.LoadScene("title");} }

enemy1AI

using System.Collections; using System.Collections.Generic; using UnityEngine;public class enemy1AI : MonoBehaviour {private Animator ani;private SpriteRenderer spr;private Rigidbody2D rid;private GameObject attackBox;private GameObject beAttackBox;private GameObject isGroundBox;private BoxCollider2D attackBoxCollider;private GameObject player;private enemyState enemyState;private enemyConst enemyConst;//組件引用//狀態(tài)private float attackTime = 0;private float wanderTime = 0;private float readyAttackTime = 0;private float velocity = 0;private float waitingTime= 0;private float hitTime = 0;//計時器// Start is called before the first frame updatevoid Start(){ani = gameObject.GetComponent<Animator>();spr = gameObject.GetComponent<SpriteRenderer>();rid = gameObject.GetComponent<Rigidbody2D>();enemyConst = GetComponent<enemyConst>();player = GameObject.FindGameObjectWithTag("Player");//讀取組件for (int i = 0; i < transform.childCount; i++){switch (transform.GetChild(i).name){case "attackBox":attackBox = transform.GetChild(i).gameObject;break;case "beAttackBox":beAttackBox = transform.GetChild(i).gameObject;break;case "isGroundBox":isGroundBox = transform.GetChild(i).gameObject;break;}}//讀取子物體attackBoxCollider = attackBox.GetComponent<BoxCollider2D>();//讀取子物體組件enemyState = GetComponent<enemyState>();}// Update is called once per frameprivate void FixedUpdate(){if(ani.GetBool("isDead")==false){setGrativy();//根據(jù)敵人狀態(tài)設(shè)置重力doWander();//警戒范圍內(nèi)無玩家時進行巡邏doChase();//玩家進入警戒范圍后進行追擊,并在脫離追擊范圍前持續(xù)追擊doAttack();//玩家進入攻擊范圍內(nèi)進行攻擊doBeHit();//受擊時播放受擊動畫}doDestroy();//死亡時播放死亡動畫}void Update(){ani.SetFloat("attackSpeed", enemyConst.attackSpeed);}void doMove(float velocity,float speed){if (velocity > 0){transform.rotation = Quaternion.Euler(0, 0, 0);}else if (velocity < 0){transform.rotation = Quaternion.Euler(0, 180, 0);}//判斷是否需要旋轉(zhuǎn)enemy1ani.SetFloat("velocity", velocity);transform.Translate(Vector2.right * Time.fixedDeltaTime * velocity * speed, Space.World);//左右移動enemy1}//移動enemy1void doWander(){if (enemyState.state == enemyState.State.wander && ani.GetBool("isBeingHit") == false) {waitingTime = 0;float velocity = 0;wanderTime += Time.fixedDeltaTime;if (wanderTime <= 0.25 * enemyConst.wanderLength){velocity = 1;}else if (wanderTime >= 0.25 * enemyConst.wanderLength && wanderTime <= enemyConst.wanderLength * 0.5){velocity = 0;}else if (wanderTime >= 0.5 * enemyConst.wanderLength && wanderTime <= enemyConst.wanderLength * 0.75){velocity = -1;}else if (wanderTime >= 0.75 * enemyConst.wanderLength && wanderTime <= enemyConst.wanderLength){velocity = 0;}else{wanderTime = 0;}//根據(jù)計時器設(shè)定velocity方向以實現(xiàn)巡邏,單次巡邏時長為enemy1Const.wanderLength,巡邏模式為右走-停止-左走-停止doMove(velocity,enemyConst.walkSpeed);//移動enemy1}}void doChase(){if (enemyState.state == enemyState.State.chase && ani.GetBool("isAttacking1") == false && ani.GetBool("isAttacking2") == false && ani.GetBool("isBeingHit") == false) {ani.SetFloat("velocity", 0);waitingTime += Time.fixedDeltaTime;if (waitingTime >= enemyConst.baseChangeTime) {if (transform.position.x - player.transform.position.x >= 0){velocity = -1;}else if (player.transform.position.x - transform.position.x >= 0){velocity = 1;}doMove(velocity, enemyConst.chaseSpeed);}}}void doAttack(){readyAttackTime += Time.fixedDeltaTime;if (enemyState.state == enemyState.State.attack || ani.GetBool("isAttacking1") == true || ani.GetBool("isAttacking2") == true) //確保攻擊動畫播放完畢{if (ani.GetBool("isGrounded") == true && ani.GetBool("isBeingHit") == false && ani.GetBool("isAttacking1") == false && ani.GetBool("isAttacking2") == false && enemyState.state == enemyState.State.attack && readyAttackTime >= enemyConst.baseAttackTime) {attackTime = 0;ani.SetFloat("velocity", 0);//站定進行攻擊if (Random.Range(1,3)==1){ani.SetBool("isAttacking1", true);}else{ani.SetBool("isAttacking2", true);}}//隨機發(fā)起一種形式的新攻擊if (ani.GetBool("isAttacking1") == true){attackTime += Time.fixedDeltaTime;if (attackTime >= 1 / enemyConst.attackSpeed * enemyConst.attackAnimation1Length){ani.SetBool("isAttacking1", false);waitingTime = 0;readyAttackTime = 0;}}else if(ani.GetBool("isAttacking2")==true){attackTime += Time.fixedDeltaTime;if (attackTime >= 1 / enemyConst.attackSpeed * enemyConst.attackAnimation2Length) {ani.SetBool("isAttacking2", false);waitingTime = 0;readyAttackTime = 0;}}//攻擊計時,以轉(zhuǎn)化動畫狀態(tài)}}void doBeHit(){if (ani.GetBool("isBeingHit") == true){hitTime += Time.fixedDeltaTime;if (hitTime >= enemyConst.hitAnimationLength){hitTime = 0;ani.SetBool("isBeingHit", false);}}}void doDestroy(){if(enemyState.HP<=0){ani.SetBool("isDead", true);Destroy(gameObject, enemyConst.deadAnimationLength);}}private void setGrativy(){if (ani.GetBool("isBeingHit") == true){rid.gravityScale = 0;}else{rid.gravityScale = 10;}//受擊狀態(tài)下重力設(shè)置為0以實現(xiàn)受擊時的僵直;} }

enemy2AI

using System.Collections; using System.Collections.Generic; using UnityEngine;public class enemy2AI : MonoBehaviour {public GameObject arrow;private Animator ani;private SpriteRenderer spr;private Rigidbody2D rid;private GameObject attackBox;private GameObject beAttackBox;private GameObject isGroundBox;private BoxCollider2D attackBoxCollider;private GameObject player;private enemyState enemyState;private enemyConst enemyConst;private GameObject shootPoint;private GameObject shootPoint2;//組件引用//狀態(tài)private float attackTime = 0;private float wanderTime = 0;private float readyAttackTime = 0;private float velocity = 0;private float waitingTime = 0;private float hitTime = 0;private bool havingInstantiateArrow = false;//計時器// Start is called before the first frame updatevoid Start(){ani = gameObject.GetComponent<Animator>();spr = gameObject.GetComponent<SpriteRenderer>();rid = gameObject.GetComponent<Rigidbody2D>();enemyConst = GetComponent<enemyConst>();player = GameObject.FindGameObjectWithTag("Player");//讀取組件for (int i = 0; i < transform.childCount; i++){switch (transform.GetChild(i).name){case "attackBox":attackBox = transform.GetChild(i).gameObject;break;case "beAttackBox":beAttackBox = transform.GetChild(i).gameObject;break;case "isGroundBox":isGroundBox = transform.GetChild(i).gameObject;break;case "shootPoint":shootPoint = transform.GetChild(i).gameObject;break;case "shootPoint2":shootPoint2 = transform.GetChild(i).gameObject;break;}}//讀取子物體attackBoxCollider = attackBox.GetComponent<BoxCollider2D>();//讀取子物體組件enemyState = GetComponent<enemyState>();}// Update is called once per frameprivate void FixedUpdate(){if (ani.GetBool("isDead") == false){setGrativy();//根據(jù)敵人狀態(tài)設(shè)置重力doWander();//警戒范圍內(nèi)無玩家時進行巡邏doChase();//玩家進入警戒范圍后進行追擊,并在脫離追擊范圍前持續(xù)追擊doAttack();//玩家進入攻擊范圍內(nèi)進行攻擊doBeHit();//受擊時播放受擊動畫}doDestroy();//死亡時播放死亡動畫}void Update(){ani.SetFloat("attackSpeed", enemyConst.attackSpeed);}void doMove(float velocity, float speed){if (velocity > 0){transform.rotation = Quaternion.Euler(0, 0, 0);}else if (velocity < 0){transform.rotation = Quaternion.Euler(0, 180, 0);}//判斷是否需要旋轉(zhuǎn)enemy1ani.SetFloat("velocity", velocity);transform.Translate(Vector2.right * Time.fixedDeltaTime * velocity * speed, Space.World);//左右移動enemy1}//移動enemy1void doWander(){if (enemyState.state == enemyState.State.wander && ani.GetBool("isBeingHit") == false){waitingTime = 0;float velocity = 0;wanderTime += Time.fixedDeltaTime;if (wanderTime <= 0.25 * enemyConst.wanderLength){velocity = 1;}else if (wanderTime >= 0.25 * enemyConst.wanderLength && wanderTime <= enemyConst.wanderLength * 0.5){velocity = 0;}else if (wanderTime >= 0.5 * enemyConst.wanderLength && wanderTime <= enemyConst.wanderLength * 0.75){velocity = -1;}else if (wanderTime >= 0.75 * enemyConst.wanderLength && wanderTime <= enemyConst.wanderLength){velocity = 0;}else{wanderTime = 0;}//根據(jù)計時器設(shè)定velocity方向以實現(xiàn)巡邏,單次巡邏時長為enemy1Const.wanderLength,巡邏模式為右走-停止-左走-停止doMove(velocity, enemyConst.walkSpeed);//移動enemy1}}void doChase(){if (enemyState.state == enemyState.State.chase && ani.GetBool("isAttacking1") == false && ani.GetBool("isAttacking2") == false && ani.GetBool("isBeingHit") == false){ani.SetFloat("velocity", 0);waitingTime += Time.fixedDeltaTime;if (waitingTime >= enemyConst.baseChangeTime){if (transform.position.x - player.transform.position.x >= 0){velocity = -1;}else if (player.transform.position.x - transform.position.x >= 0){velocity = 1;}doMove(velocity, enemyConst.chaseSpeed);}}}void doAttack(){readyAttackTime += Time.fixedDeltaTime;if (enemyState.state == enemyState.State.attack || ani.GetBool("isAttacking1") == true || ani.GetBool("isAttacking2") == true) //確保攻擊動畫播放完畢{if (ani.GetBool("isGrounded") == true && ani.GetBool("isBeingHit") == false && ani.GetBool("isAttacking1") == false && ani.GetBool("isAttacking2") == false && enemyState.state == enemyState.State.attack && readyAttackTime >= enemyConst.baseAttackTime){attackTime = 0;ani.SetFloat("velocity", 0);//站定進行攻擊if (player.transform.position.y + 1 >= transform.position.y) //判斷是否需要向下射箭{ani.SetBool("isAttacking1", true); }else{ani.SetBool("isAttacking2", true);}}//根據(jù)玩家位置發(fā)動攻擊if (ani.GetBool("isAttacking1") == true){attackTime += Time.fixedDeltaTime;if (spr.sprite.name == "attack-A4"&&havingInstantiateArrow==false){havingInstantiateArrow = true;Instantiate(arrow, shootPoint.transform.position, transform.rotation);}//生成水平的箭if (attackTime >= 1 / enemyConst.attackSpeed * enemyConst.attackAnimation1Length){ ani.SetBool("isAttacking1", false);havingInstantiateArrow = false;waitingTime = 0;readyAttackTime = 0;}//結(jié)束動畫}else if (ani.GetBool("isAttacking2") == true){attackTime += Time.fixedDeltaTime;if (spr.sprite.name == "attack-B4" && havingInstantiateArrow == false){havingInstantiateArrow = true;Instantiate(arrow, shootPoint2.transform.position, Quaternion.Euler(0, transform.rotation.y*180, 315));}//生成斜向下的箭if (attackTime >= 1 / enemyConst.attackSpeed * enemyConst.attackAnimation2Length){ani.SetBool("isAttacking2", false);havingInstantiateArrow = false;waitingTime = 0;readyAttackTime = 0;}//結(jié)束動畫}//攻擊計時,以轉(zhuǎn)化動畫狀態(tài)}}void doBeHit(){if (ani.GetBool("isBeingHit") == true){hitTime += Time.fixedDeltaTime;if (hitTime >= enemyConst.hitAnimationLength){hitTime = 0;ani.SetBool("isBeingHit", false);}}}void doDestroy(){if (enemyState.HP <= 0){ani.SetBool("isDead", true);Destroy(gameObject, enemyConst.deadAnimationLength);}}private void setGrativy(){if (ani.GetBool("isBeingHit") == true){rid.gravityScale = 0;}else{rid.gravityScale = 10;}//受擊狀態(tài)下重力設(shè)置為0以實現(xiàn)受擊時的僵直;} }

總結(jié)


歷經(jīng)二十天的努力,我的第一款游戲demo的制作算是告一段落了,盡管還有數(shù)不清的不足之處,但是起碼是一個可以運行的游戲了。我不敢說自己已經(jīng)盡全力去把它做到最好了,不過我想下一次,我會做的更好。

9/12 1:40 -----ydx

總結(jié)

以上是生活随笔為你收集整理的基于unity的2D横版游戏开发日志 小结的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

亚洲日本va午夜在线影院 | 国色天香第二季 | 亚洲黄色小说网 | 麻豆系列在线观看 | 99热最新精品 | 在线观看的av网站 | 国产v在线播放 | 99久久这里只有精品 | 456成人精品影院 | 国产午夜精品一区二区三区嫩草 | 狠狠色狠狠色综合系列 | 日韩免费一区二区在线观看 | 日日成人网 | 国产高清在线观看av | 婷婷丁香在线视频 | 亚洲精品91天天久久人人 | 久久久免费精品国产一区二区 | 99综合影院在线 | 香蕉视频在线网站 | 精品在线观 | 六月激情婷婷 | 亚洲精品国偷拍自产在线观看蜜桃 | 最近日本字幕mv免费观看在线 | 国内精品视频免费 | 麻豆传媒视频在线播放 | 日韩精品免费在线观看视频 | 国产精品21区| 精品视频免费在线 | 亚洲黄色免费在线看 | 亚洲最大av在线播放 | 日韩 精品 一区 国产 麻豆 | 国产亚洲精品久久久久久大师 | 国产精品网红福利 | 视频成人免费 | 中文字幕制服丝袜av久久 | 综合色中色 | 中文字幕av最新 | 91精品免费在线 | 精品国产一区二区三区久久久久久 | 久久人人爽人人爽人人片av软件 | 色婷婷视频在线观看 | 麻豆传媒电影在线观看 | 日韩一三区 | 国产美女精品人人做人人爽 | 国产精品欧美久久久久三级 | 久久久久免费精品国产 | 97视频在线观看播放 | 国产精品乱码久久久久 | 国产三级香港三韩国三级 | 免费观看www7722午夜电影 | 欧美日韩国产在线精品 | 色婷婷骚婷婷 | 一区二区视频在线播放 | 成人av免费在线播放 | av片在线看 | 国产五十路毛片 | 91丨九色丨勾搭 | 黄色av网站在线免费观看 | 亚洲97在线 | 五月天综合色激情 | 欧美一区二区视频97 | 久久久久久久av麻豆果冻 | 久99视频 | 国产黄色片久久久 | 亚洲小视频在线观看 | 在线免费av播放 | 欧美一级片在线播放 | 91看片淫黄大片一级在线观看 | 综合色综合 | 99视频在线免费观看 | 日韩成人精品在线观看 | 91网免费看| 综合亚洲视频 | 中文av在线天堂 | 久久久久久久久久电影 | 亚洲精品乱码白浆高清久久久久久 | 国产黄色理论片 | 九九热中文字幕 | 国产视频网站在线观看 | 91一区一区三区 | 97超碰在线久草超碰在线观看 | 日韩av有码在线 | 久久久久久久久久久免费av | 亚洲欧美色婷婷 | 人人艹视频 | 看av免费| 日韩欧美视频一区 | 国产黄色资源 | 一区久久久 | 97免费在线观看视频 | 天天做日日爱夜夜爽 | 永久免费视频国产 | 精品一二 | 免费在线中文字幕 | 国产福利在线 | 成人午夜电影网站 | 91女子私密保健养生少妇 | 综合久久2023 | 天堂av观看 | 最新日韩在线观看 | a在线v| 欧美极品少妇xxxxⅹ欧美极品少妇xxxx亚洲精品 | 久久午夜色播影院免费高清 | 色资源中文字幕 | 亚洲精品中文在线资源 | 很黄很黄的网站免费的 | 91色影院| 在线观看黄色 | www.亚洲视频.com | 91av原创| 久久久在线观看 | 国产精品成 | 国产成人99av超碰超爽 | 蜜臀av一区二区 | 久久成年人网站 | 久久精品一区二区三区视频 | www.黄色片网站 | 伊色综合久久之综合久久 | 亚洲一区二区三区毛片 | 久久艹综合 | 激情综合电影网 | 日韩欧美在线免费观看 | 久久国产一区二区 | 91精品国产麻豆国产自产影视 | 国内久久精品视频 | 欧美日韩国产一二三区 | 精品久久久久久一区二区里番 | 欧美一级激情 | 九色91在线 | 亚洲国产欧洲综合997久久, | 99久久精品免费看 | 免费人成在线观看 | 日韩一区二区三区在线观看 | 日韩免费中文字幕 | 国产一区二区午夜 | 一区二区视频欧美 | 国产精品18久久久久久久久久久久 | 一区二区 不卡 | 最新国产精品久久精品 | 一区二区欧美日韩 | 欧美不卡视频在线 | 成人 国产 在线 | 超碰在线日韩 | 欧美一级性生活视频 | 中文字幕九九 | 操操操日日| 人人爱人人做人人爽 | 婷婷色九月| 精品久久毛片 | www免费在线观看 | 成人免费亚洲 | 日韩一区二区三区免费视频 | 日本黄色免费在线观看 | 激情五月在线观看 | 亚洲欧美日本国产 | 日本午夜免费福利视频 | 日韩av播放在线 | 国产精品一区二区久久 | 毛片网站免费 | 成人h电影在线观看 | 88av视频 | 成人免费在线观看入口 | 国产色秀视频 | 999视频精品 | 日韩av一区在线观看 | 日本一区二区高清不卡 | 一区二区视| 黄色一级免费网站 | 玖玖在线看 | 日韩精品免费在线视频 | 久久久久久久久久福利 | 免费在线观看av电影 | 国产免费大片 | 欧美日韩精品免费观看视频 | 欧美国产精品久久久久久免费 | 91亚洲国产成人久久精品网站 | 成人精品一区二区三区中文字幕 | 国产在线播放一区二区三区 | 国产91电影在线观看 | 亚洲电影黄色 | 7777精品伊人久久久大香线蕉 | 国产精品一区二区三区免费视频 | av线上免费看 | 久草在线国产 | 久久成人在线视频 | av在线一级 | 久久99热精品 | 国产成人av电影在线观看 | 中日韩男男gay无套 日韩精品一区二区三区高清免费 | 视频精品一区二区三区 | 国产美女视频 | 国产精品久久久久免费 | 天天干天天上 | 亚洲狠狠 | 亚洲最大在线视频 | 日日碰狠狠躁久久躁综合网 | 免费一级片观看 | 日韩精品中文字幕在线观看 | 91麻豆精品国产自产在线游戏 | 伊人久久五月天 | 69国产盗摄一区二区三区五区 | 久久视频在线 | 一级片色播影院 | 免费国产在线精品 | 国产精品99在线观看 | 人人网人人爽 | a成人在线| 最近最新mv字幕免费观看 | 99精品免费久久久久久日本 | 欧美日韩精品区 | 亚洲区精品视频 | 国产一线天在线观看 | 毛片区| 久久精品亚洲一区二区三区观看模式 | 亚洲一区二区观看 | 成人网在线免费视频 | 不卡的av在线播放 | 欧美日韩一区二区在线观看 | 国产精品日韩久久久久 | 午夜av一区| 天天干天天射天天插 | 波多野结衣在线观看视频 | 一级大片在线观看 | 五月婷婷黄色网 | 激情小说网站亚洲综合网 | 91在线你懂的 | 国产精品一区二区免费 | 天天操天天插 | 在线91av | 久久一级片 | 成人免费视频播放 | 91入口在线观看 | 亚洲国产成人精品电影在线观看 | 国产在线一卡 | 精品国产一区二区三区男人吃奶 | 久久精品视频国产 | 黄色综合 | 久久久五月天 | 天堂在线视频中文网 | 久久精品波多野结衣 | av免费在线观 | 亚洲a在线观看 | 精品国产综合区久久久久久 | 丁香综合五月 | 国产视频 亚洲精品 | 久草久| 国产不卡在线视频 | 亚洲成人精品在线观看 | 午夜av免费| 欧美精品在线观看免费 | www.com黄色| 国产精品毛片一区视频播不卡 | 天天干天天搞天天射 | 国产精品美女久久久久久久 | 日韩成人免费在线电影 | 久久人人爽人人爽 | 三级av片 | 91精品福利在线 | 国产在线观看你懂得 | 色偷偷中文字幕 | 国产精品九色 | 久久精品久久精品 | 国产专区日韩专区 | 久久这里 | 国产视频精品网 | 在线观看av国产 | 欧美激情第一页xxx 午夜性福利 | 日本一区二区免费在线观看 | 97免费在线观看视频 | 国产精品一区二区三区久久久 | 999国产在线 | 国产精品视频全国免费观看 | 伊人五月天综合 | 国产精品美女毛片真酒店 | 久久视频中文字幕 | 国产一区二区三精品久久久无广告 | 久久短视频| 五月婷婷黄色 | 亚洲专区视频在线观看 | 亚洲一区久久久 | 亚洲日本va中文字幕 | 亚洲精品视频免费 | 免费黄色在线网站 | 成年性视频 | 天天干天天弄 | 婷婷综合伊人 | 久久久婷 | 东方av在| 日本久久中文字幕 | 久久久久久久久久久综合 | 四虎在线免费视频 | 波多野结衣亚洲一区二区 | 国产精品成久久久久三级 | 草久草久| 午夜久久福利 | 少妇搡bbbb搡bbb搡69 | 成人在线视频免费观看 | 国产黄色av| 99精品国产亚洲 | 国产精品手机在线播放 | 丰满少妇一级片 | 中文av字幕在线观看 | 一级黄色片网站 | 中文字幕在线一区二区三区 | 久久精品久久99 | 97在线精品 | 国内精品久久久精品电影院 | 精品一区二区在线观看 | 色多多视频在线观看 | 黄色毛片在线看 | 欧美一区在线观看视频 | 中文字幕av最新 | 最近最新中文字幕视频 | 日韩精品免费在线 | 成年人免费观看国产 | 天天爽综合网 | 在线视频一二三 | 国产成人综合精品 | 91福利社区在线观看 | 91丨精品丨蝌蚪丨白丝jk | 91视频88av| 欧美成人在线免费 | 久久精选视频 | 国产一级不卡毛片 | 黄色小网站免费看 | free. 性欧美.com| 99久久精| 国产91欧美| 国产99久久精品一区二区300 | 亚洲电影免费 | 尤物九九久久国产精品的分类 | 久久99精品久久久久久 | 五月开心六月婷婷 | 香蕉视频久久 | 在线视频一区观看 | 麻豆传媒视频观看 | 国产黄| 中文字幕 在线 一 二 | 久草在线久草在线2 | 久久久精品久久日韩一区综合 | 久久久国产精品人人片99精片欧美一 | 欧美成人免费在线 | 欧美不卡视频在线 | 91激情视频在线观看 | 黄色成人av | 97超碰人| 久99久在线 | h动漫中文字幕 | 亚洲a在线观看 | 日日夜夜精品网站 | 麻豆小视频在线观看 | 99久久久久免费精品国产 | 久久草草热国产精品直播 | 五月激情久久久 | 亚洲成aⅴ人在线观看 | 久久久久免费看 | 日韩精品一区二区三区第95 | 欧美一级特黄aaaaaa大片在线观看 | 久久一区二区三区四区 | 伊人激情综合 | 国产精品一区二区三区电影 | 国产一区在线精品 | 国产精品热视频 | 色噜噜日韩精品一区二区三区视频 | 久久人人艹 | 色网免费观看 | 国产日产精品一区二区三区四区的观看方式 | 日韩在线观看影院 | 麻豆小视频在线观看 | 三级黄色在线 | 免费在线观看中文字幕 | 欧美伦理一区二区 | a在线观看免费视频 | 久久精品xxx | 成人a大片 | 69亚洲视频 | 国产黄色免费观看 | 四虎影视国产精品免费久久 | 日韩av一卡二卡三卡 | 国产精品一区二区三区久久久 | 免费高清国产 | 欧美激情精品一区 | 久久久久国产一区二区三区四区 | 日韩精品视频第一页 | 亚洲最大av网站 | 成人免费毛片aaaaaa片 | 国产91全国探花系列在线播放 | 精品中文字幕在线播放 | 国产青青青 | 亚洲一区二区三区在线看 | 插插插色综合 | 黄色小说网站在线 | 色欧美日韩| 超碰公开在线观看 | 国产美女免费看 | 亚洲深夜影院 | 美女视频黄频 | 国产日韩欧美在线观看视频 | 成人久久18免费网站 | 日韩v在线 | 少妇bbbb搡bbbb桶 | 欧美日韩中文在线视频 | 91香蕉国产在线观看软件 | 黄色av电影一级片 | 久久九九免费视频 | 久久短视频 | 欧亚日韩精品一区二区在线 | 91精品国产一区 | 天堂黄色片 | 日韩免费小视频 | 91精品国产自产老师啪 | 成人黄色免费观看 | 不卡视频在线看 | 欧美日韩裸体免费视频 | 国产二区视频在线观看 | 超碰人在线 | 美女久久久久 | 日韩精品字幕 | 国产精品 国内视频 | 成人动漫一区二区三区 | 黄色av观看 | 成人a在线观看高清电影 | 国产高清不卡 | 日韩久久久久久久久久久久 | 日韩中文字幕在线看 | 欧美aa一级 | www.色午夜 | 日韩免费在线一区 | 日韩在线观看第一页 | 这里只有精品视频在线 | 久久精品视频一 | 人人插人人草 | 黄网av在线| 婷婷丁香在线视频 | 在线免费观看视频一区二区三区 | 久久婷婷久久 | 婷婷婷国产在线视频 | av一区二区在线观看中文字幕 | 日韩av一区二区在线 | 久久成人精品电影 | 综合精品久久 | 国产69精品久久久久久久久久 | 深爱激情五月婷婷 | 九九视频免费观看视频精品 | 日韩国产欧美在线视频 | 国产免费激情久久 | 婷婷色吧 | 国产精品久久久久一区 | 99久久电影 | а中文在线天堂 | 99re亚洲国产精品 | 国产精品综合久久久久 | 日韩在线中文字幕 | 91精品中文字幕 | 久久综合五月天 | 亚洲精品美女在线观看播放 | 91麻豆文化传媒在线观看 | 婷婷去俺也去六月色 | 成人app在线播放 | 亚洲精品国偷拍自产在线观看 | 96亚洲精品久久 | 国产色网站 | 亚洲日本va午夜在线电影 | 亚洲欧美日韩一级 | 亚洲视频播放 | 久久在草 | 亚洲黄在线观看 | 日韩一区二区三区免费电影 | 91尤物在线播放 | 色老板在线 | 欧美做受高潮电影o | 午夜婷婷在线播放 | 久久免费视频网 | 免费男女羞羞的视频网站中文字幕 | 人人模人人爽 | 黄色在线观看免费网站 | 亚洲国产欧美在线人成大黄瓜 | 亚洲精品乱码久久久久v最新版 | 日本精品久久久久久 | 四虎小视频 | 在线观看视频一区二区三区 | 伊人色综合网 | 天堂av色婷婷一区二区三区 | 国产精品久久一区二区三区, | 91香蕉视频黄色 | 韩日三级在线 | 夜夜骑日日操 | 天天摸天天弄 | 午夜精品一区二区三区在线播放 | 国产精品成人免费精品自在线观看 | 中文字幕在线免费 | wwwwww国产| 久射网| 国产精品久久久久久一区二区三区 | 国产精品自在线 | 日韩a在线 | 久久精品综合网 | 中文字幕在线看视频 | 在线观看免费色 | 日韩午夜电影院 | 国产精品系列在线观看 | 高清不卡一区二区三区 | 久久久高清免费视频 | 成年人电影免费在线观看 | 免费在线观看一区二区三区 | 成人a免费| 国产日韩欧美视频 | 免费看片黄色 | 激情视频免费在线观看 | 亚洲好视频| 激情在线五月天 | 久久精品视频国产 | 国产码电影 | 亚洲特级片 | 在线观看91久久久久久 | 在线小视频你懂的 | 欧美日韩国产二区 | 日韩av一区二区在线播放 | 国产精品女 | 91重口视频 | 久久激情视频免费观看 | 波多野结衣亚洲一区二区 | 91精品国产入口 | 手机在线日韩视频 | 黄色一级大片免费看 | 丁香婷婷深情五月亚洲 | 欧美另类z0zx | 毛片的网址 | 国产精品白浆视频 | 日韩美精品视频 | 在线观看精品视频 | 久久草草热国产精品直播 | 夜夜夜精品 | 久草在线视频首页 | 香蕉视频在线播放 | 欧美国产视频在线 | 一区二区三区四区在线 | 精品在线视频一区 | 国产另类xxxxhd高清 | 久久综合狠狠 | 在线观看成人国产 | 91豆麻精品91久久久久久 | 色99色 | 精品国产aⅴ一区二区三区 在线直播av | 四虎在线影视 | 亚洲电影成人 | 超碰夜夜 | 成人午夜精品福利免费 | 婷婷丁香花 | 四虎在线永久免费观看 | 特级片免费看 | 亚洲最快最全在线视频 | 天天干天天拍天天操天天拍 | 欧美a级成人淫片免费看 | 久久永久免费视频 | 欧美日韩精品影院 | 色婷婷久久久综合中文字幕 | 欧美韩国日本在线观看 | 天天天天射 | 国产精品欧美在线 | 亚洲国产中文在线观看 | 九热在线 | 91免费版在线观看 | 国产拍在线 | 久草影视在线 | 精品中文字幕视频 | 日韩久久影院 | 日韩高清不卡一区二区三区 | 国产精品综合在线观看 | 精品国产一区二区三区免费 | 精品国产乱码一区二区三区在线 | 97福利社| 四虎在线免费观看 | 在线免费高清一区二区三区 | 在线观看视频在线观看 | 在线播放国产精品 | 久久精品香蕉视频 | 成人免费观看视频网站 | 日本大片免费观看在线 | 国产精品久久久久久久久软件 | 日韩精品无 | 不卡精品视频 | 91九色视频在线 | 久久草| 久久久精品欧美一区二区免费 | 久草免费在线 | 96亚洲精品久久 | 亚洲成a人片在线观看中文 中文字幕在线视频第一页 狠狠色丁香婷婷综合 | 国产视频精品视频 | 九九九免费视频 | 亚洲欧美婷婷六月色综合 | 91插插视频 | 欧美激情综合五月色丁香小说 | ,午夜性刺激免费看视频 | 99精品国产高清在线观看 | 九色最新网址 | 欧美大片在线观看一区 | 久久免费播放 | 日韩特级毛片 | 免费看v片 | 开心色婷婷 | 久久久久久久久久久久影院 | 日韩免费在线网站 | 久久av伊人 | 久久精美视频 | 成年人看片网站 | 97成人免费视频 | 97超碰在线人人 | 国产一卡在线 | 在线免费观看视频你懂的 | 91九色国产蝌蚪 | 久久avav| 中文字幕丝袜一区二区 | 中文字幕色站 | 人人藻人人澡人人爽 | 国产成人区 | 天天爽天天爽 | 黄色大全免费网站 | 中文字幕韩在线第一页 | 一区二区三区动漫 | 欧美激情另类文学 | 亚洲精品国产综合久久 | 91人人爱 | 福利视频一二区 | 国产在线精品国自产拍影院 | 国产视频精品久久 | 中文字幕人成乱码在线观看 | 亚洲一区二区三区四区在线视频 | 日韩美在线 | 久久黄色影视 | 欧美成人黄色 | 三上悠亚一区二区在线观看 | 久草国产在线观看 | 在线观看一区视频 | 欧美日韩视频在线观看免费 | 97免费在线观看视频 | 日韩精品免费一区二区三区 | 免费观看91视频大全 | 久久久免费精品视频 | 蜜臀av性久久久久蜜臀aⅴ涩爱 | 成年人在线观看视频免费 | 午夜精品久久 | 国产免费片 | 色网址99 | 婷婷综合激情 | 欧美日韩精品在线视频 | 97视频免费在线 | 日本xxxx.com | 久久久久久毛片精品免费不卡 | 五月婷婷综合久久 | 五月婷婷在线视频观看 | 992tv在线观看网站 | 国产在线视频在线观看 | www.狠狠干 | 成人av电影在线 | 不卡的av片 | 夜夜操综合网 | 国产成人精品亚洲 | 日韩一区二区三区免费视频 | 香蕉在线视频播放网站 | 久久久久久欧美二区电影网 | 亚洲精色 | 国产区精品区 | 亚洲精品动漫成人3d无尽在线 | 在线观看网站你懂的 | 日韩视频在线观看免费 | 成人中心免费视频 | 91毛片在线 | 天天艹天天 | 黄色大全免费观看 | 国产手机视频在线 | 欧美地下肉体性派对 | 97国产在线播放 | 国产区在线看 | 欧美日韩精品影院 | 国产高清 不卡 | 欧美日韩精品在线视频 | 黄色软件在线观看免费 | 日女人电影 | 亚洲japanese制服美女 | 亚洲精品久久视频 | 狠狠色狠狠色 | 色婷婷在线视频 | 国产综合香蕉五月婷在线 | 六月婷婷久香在线视频 | 最近中文字幕免费av | 久久无码精品一区二区三区 | 在线观看色视频 | 九九热精品在线 | 欧美日韩国产精品一区二区 | 国产 日韩 中文字幕 | 中文字幕九九 | 2023av| 黄色a在线| 日本高清中文字幕有码在线 | 日韩va亚洲va欧美va久久 | 中文字幕在线观看的网站 | 91精品国产综合久久久久久久 | 精品美女久久久久久免费 | 五月天综合在线 | 少妇视频在线播放 | 国产精品一区在线播放 | 国产欧美日韩视频 | 99久久久| 五月激情亚洲 | 亚洲婷婷综合色高清在线 | 国产日韩精品在线观看 | 久久精品一二区 | 2021国产在线视频 | 免费观看9x视频网站在线观看 | 欧美午夜精品久久久久久浪潮 | 亚洲综合狠狠干 | 国产一区免费观看 | 国产又粗又猛又黄又爽 | 亚洲国产人午在线一二区 | 奇米网777 | 99免费在线视频观看 | 成人h动漫精品一区二 | 国产精品第2页 | 中文字幕视频一区 | 日批在线观看 | 免费亚洲黄色 | 国产日韩精品一区二区 | 久久久综合电影 | 亚洲精品乱码久久久一二三 | 国产精品精品国产色婷婷 | 3d黄动漫免费看 | 亚洲国产一区二区精品专区 | 超碰在线中文字幕 | 在线国产日本 | 日韩免费在线观看视频 | 手机成人在线电影 | 欧美日韩在线视频一区二区 | 欧美日韩免费在线观看视频 | 91精品啪在线观看国产81旧版 | av一级片网站| 亚洲视频 视频在线 | 久久人人97超碰精品888 | 五月黄色 | 日韩福利在线观看 | 免费看久久久 | 国产精品精品国产色婷婷 | 日韩中文久久 | 一区二三国产 | 国产成人久久精品一区二区三区 | 99久久这里只有精品 | 欧美男男tv网站 | 视频成人免费 | 日本精品一区二区三区在线观看 | 免费福利片2019潦草影视午夜 | 五月婷婷六月丁香在线观看 | 国产一区二区不卡视频 | 国产特级毛片aaaaaa高清 | 中文字幕欧美日韩va免费视频 | 中文字幕在线日 | 国产日韩欧美在线 | www.福利 | 国产精品视频大全 | 久草视频手机在线 | 国产福利a | 国产91精品在线播放 | 色偷偷人人澡久久超碰69 | 日韩精品视频在线观看网址 | 亚洲成人网在线 | 久久免费播放视频 | 国产中的精品av小宝探花 | 亚洲精品在线免费看 | 在线小视频 | 国产中文字幕在线 | 日韩午夜电影 | 激情久久一区二区三区 | 国产精品一级在线 | 国产看片网站 | 国产午夜麻豆影院在线观看 | 高清av在线免费观看 | 成人羞羞视频在线观看免费 | 久久国产系列 | 一区二区三区四区五区在线视频 | 96视频免费在线观看 | 一区二区三区视频在线 | 亚洲高清av | 国产亚洲人 | 中文字幕日韩无 | 992tv在线观看| 在线观看精品 | 操碰av| 在线视频 你懂得 | 国内揄拍国产精品 | 国产资源中文字幕 | 国产伦精品一区二区三区在线 | 91成人精品国产刺激国语对白 | 国产护士av| 久热香蕉视频 | 黄网站免费看 | 国产理论一区二区三区 | 久久国产剧场电影 | 亚洲黄色影院 | 日韩,中文字幕 | 麻豆视频免费 | 久久久久久久久网站 | 久艹在线免费观看 | 国产激情久久久 | 久久美女电影 | 色偷偷97 | 综合五月 | 欧美淫aaa免费观看 日韩激情免费视频 | 日韩在线观看的 | 国产资源网| 免费视频区 | 久久免费看毛片 | 国产高清免费av | 日韩精品一区二区在线视频 | www日日夜夜| 免费v片 | 精品国产乱码久久久久久浪潮 | 91精品久| 成人a在线| av官网| 国产精品久久久久免费观看 | 欧美日韩中文另类 | 天天干.com | 亚洲 中文 欧美 日韩vr 在线 | 亚洲精品动漫成人3d无尽在线 | 91丨九色丨高潮丰满 | 亚洲午夜不卡 | 性色av免费在线观看 | 91桃色免费视频 | 国产在线看一区 | 久久成人午夜 | 色视频在线免费观看 | 欧美日韩在线免费观看视频 | 国产精品成人自产拍在线观看 | 夜夜骑天天操 | 国产中文字幕一区二区三区 | 人成在线免费视频 | 久久久久久不卡 | 亚洲dvd | 亚洲精品国产精品乱码不99热 | 亚洲成av | 91探花系列在线播放 | 草久久久久久久 | 久久久久女人精品毛片九一 | 综合久久久久久久 | 久久成人资源 | 欧美a√在线 | 久久久久久久久久久免费av | 亚洲精品啊啊啊 | 国产成人一区二区三区 | 亚洲黄色一级大片 | 天堂网中文在线 | 狠狠色丁香婷婷 | 久久精品96 | 五月天久久激情 | 色999视频| 狠狠狠的干 | 欧美日韩视频观看 | 国产成人三级三级三级97 | 天天干天天干天天射 | 在线成人一区二区 | 在线观看色网 | 日韩一区正在播放 | 手机看国产毛片 | 草莓视频在线观看免费观看 | 97超级碰碰碰碰久久久久 | 91麻豆精品国产91久久久久 | 色婷婷一区| 9在线观看免费高清完整版在线观看明 | 免费看黄色小说的网站 | 在线看成人av | 在线免费观看不卡av | 中文字幕人成乱码在线观看 | 96av麻豆蜜桃一区二区 | 91x色| 美女久久精品 | 久久久久久久看片 | 天天碰天天操视频 | 一区二区三区在线看 | 91亚州| 正在播放五月婷婷狠狠干 | 亚洲国产精品成人女人久久 | 天天草天天插 | 91少妇精拍在线播放 | 日韩黄色免费在线观看 | 中文字幕色站 | 日本黄色一级电影 | 国产日韩三级 | 精品免费在线视频 | 日韩理论片在线观看 | 亚洲综合在线五月天 | 久久手机免费视频 | 国内精品二区 | 国产成人精品av | 久久久www成人免费毛片 | 亚洲精品乱码久久久久久蜜桃不爽 | 亚洲精品国产精品国自产观看浪潮 | 狠狠躁18三区二区一区ai明星 | 在线视频久 | 国产精品mv | 在线成人中文字幕 | 手机在线中文字幕 | 91免费网站在线观看 | 婷婷色av | 在线观看久久 | 毛片a级片| 91中文字幕视频 | 日本精品一区二区在线观看 | 国产高清一区二区 | 免费视频网 | 在线观看视频亚洲 | a视频在线播放 | 婷婷激情5月天 | 狠狠干天天射 | 国产精品男女啪啪 | www免费| 免费日韩 精品中文字幕视频在线 | 992tv在线观看 | 国产一线天在线观看 | 久久久久国产免费免费 | 最近中文字幕在线中文高清版 | 国产精品成人自产拍在线观看 | 精品国产一区二区三区男人吃奶 | 香蕉网站在线观看 | 国产精品视频永久免费播放 | 一区中文字幕电影 | 亚洲撸撸 | 亚洲黄色av网址 | 伊人成人久久 | www五月天| 91成人黄色 | 在线免费视频 你懂得 | 91看毛片 | 国产免费嫩草影院 | 国产精品久久久777 成人手机在线视频 | 贫乳av女优大全 | 麻豆视频在线播放 | 91精品1区 | 一区二区精品在线视频 | 成人网页在线免费观看 | 欧美精品久久人人躁人人爽 | 日韩精品中文字幕有码 | 不卡的av片 | 免费精品国产 | 在线看v片成人 | 热re99久久精品国产66热 | 91天堂在线观看 | 日韩xxxx视频 | 精品久久久久久电影 | 91亚洲精品乱码久久久久久蜜桃 | 在线天堂视频 | 国产精品亚洲a | 国产免费精彩视频 | 96精品视频 | 91麻豆精品国产91久久久无限制版 | 中文字幕精 | 日本中文字幕在线观看 | 中文字幕观看在线 | 91成人精品在线 | 91九色porn在线资源 | 不卡的av电影| 久久久久亚洲国产精品 | 黄色一级性片 | 日韩欧美在线中文字幕 | 波多野结衣视频一区二区 | 91看片成人 | 欧美一区二区日韩一区二区 | 天天天天综合 | 久久精品婷婷 | 久久精品久久99精品久久 | 成人黄色电影在线播放 | 丁香视频五月 | 成人亚洲精品国产www | 久久精品电影网 | 国产免费影院 | 免费在线黄网 | 国产久视频 | 久久精品国产免费 | 日韩一区二区三区免费电影 | 最新av中文字幕 | 欧美一区免费观看 | www狠狠| 二区三区中文字幕 | 日本精品久久久久久 | av免费在线观 | 中文字幕成人在线观看 | 日韩电影在线观看一区二区 | av福利在线免费观看 | 国产精品日韩久久久久 | 久久精品99国产国产 | 综合婷婷丁香 | 在线看av的网址 | 国产精品久久久久国产精品日日 | 国产不卡精品 | 国产精品原创av片国产免费 | 国产视频69| 亚洲国产精品小视频 | 国产中文字幕视频在线观看 | 最近字幕在线观看第一季 | 日韩三级av|