السلام عليكم ورحمة الله وبركاته
تحية طيبة للأعضاء الكرام
تطبيق بسيط لفكرة لعبة وهى كتجربة وتطبيق فقط وليست لعبة مكتملة للنشر

للتحميل
http://mediafire.com/?1o29hhn0s3rov5d
الفكرة وطريقة اللعب
يوجد مدفع للاعب باللون الاخضر ومدفع للعدو باللون الاحمر ومجموعة مدافع باللون الابيض وهى محايدة يمكن السيطرة عليها
المطلوب هو الاطلاق على العدو حتى يتحول الي اللون الاخضر ويمكن ايضا الاطلاق على المدافع البيضاء للمساعدة فى القضاء على العدو
اى مدفع باللون الاخضر يمكن الضغط عليه بزر الماوس الايسر مع التحريك لاعلى واسفل لتدوير المدفع
السكربت الرئيسي وهو سكربت المدافع
تحية طيبة للأعضاء الكرام
تطبيق بسيط لفكرة لعبة وهى كتجربة وتطبيق فقط وليست لعبة مكتملة للنشر

للتحميل
http://mediafire.com/?1o29hhn0s3rov5d
الفكرة وطريقة اللعب
يوجد مدفع للاعب باللون الاخضر ومدفع للعدو باللون الاحمر ومجموعة مدافع باللون الابيض وهى محايدة يمكن السيطرة عليها
المطلوب هو الاطلاق على العدو حتى يتحول الي اللون الاخضر ويمكن ايضا الاطلاق على المدافع البيضاء للمساعدة فى القضاء على العدو
اى مدفع باللون الاخضر يمكن الضغط عليه بزر الماوس الايسر مع التحريك لاعلى واسفل لتدوير المدفع
السكربت الرئيسي وهو سكربت المدافع
كود:
#pragma strict var bullet : bullet; var health : int = 5; var ready : boolean = true; private var fireDir : Transform; private var clicked : boolean = false; private var closestEnemy : GameObject; private var liser : Transform; function Start () { if(gameObject.tag == 'null') ready = false; fireDir = transform.Find('fire').transform; liser = transform.Find('liser').transform; } function Update () { if(ready) fire(); if(clicked && gameObject.tag == 'Player') { transform.Rotate(0, -Input.GetAxis('Mouse Y') * 5.0, 0); liser.active = true; } // A.I. if(gameObject.tag == 'enemy') { FindClosestEnemy(); if(closestEnemy) { var lookPos = closestEnemy.transform.position - transform.position; lookPos.y = 0; var rotation = Quaternion.LookRotation(lookPos); transform.rotation = Quaternion.Slerp(transform.rotation, rotation, Time.deltaTime * 1); } } } function OnMouseDown () { clicked = true; } function OnMouseUp() { clicked = false; liser.active = false; } function fire() { ready = false; var xbullet = Instantiate(bullet, fireDir.position, Quaternion.identity); xbullet.rigidbody.AddForce(fireDir.forward * 150); xbullet.wparent = gameObject.tag; yield WaitForSeconds(1); ready = true; } function FindClosestEnemy () { var gos : GameObject[]; gos = GameObject.FindGameObjectsWithTag("null"...; gos += GameObject.FindGameObjectsWithTag("Player"...; var distance = Mathf.Infinity; var position = transform.position; for (var go : GameObject in gos) { var diff = (go.transform.position - position); var curDistance = diff.sqrMagnitude; if (curDistance < distance) { closestEnemy = go; distance = curDistance; } } }
برجاء نقد السكربت وتصحيح الاخطاء به او اذا فى طرق افضل من المسخدمة لكي استفيد من تحسين مستواي البرمجي
اللعبة التي قلدت الفكرة منها
http://www.onlinegamesmania.com/node/610/play
تعليق