کانال تخصصی یونیتی ( آموزش و نکته )
1.76K subscribers
549 photos
146 videos
51 files
251 links
به نام خدا

مسئولیت مطالب یا آگهی ارسالی در کانال یا کامنت ها به عهده من یا ما نیست

لیست گروه ها و...
https://t.me/UnityEngine3D/823

برای تبلیغ در کانال و گروه :
https://t.me/UnityEngine3DAds

مدیر اصلی(مالک)
@UnityEngine
Download Telegram
آموزش جلوگیری از هک بازی در یونیتی_آنتی لاکی پچر:

یکی از راه های هک اینه که افراد از برنامه های مختلف مثل لاکی پچر استفاده می کنن.

یک روش ضد هک اینه که توی شروع بازی یعنی تابع Start چک کنید که اپلیکیشن لاکی پچر یا سایر روی اندروید نصب شده یا نه.

اگه نصب بود پیام بدید که لاکی پچر حذف کنید تا بازی اجرا بشه یا منوی اصلی بازی روش یه لایه یا پنل فعال کنید که منوی اصلی دیده نشه و بره زیرش.

⚠️ اما چطور بررسی کنیم لاکی نصب هست یا نه.

اولا پکیج توابع بومی اندروید (android native functions ) رو باید داشته باشید.

این پکیج چند کیلوبایتی شامل توابعی هست که با استفاده از کلاس های جاوا میاد یک واسط برای ارتباط با اندروید ایجاد می کنه یعنی اومده کار رو ساده کرده مثلا اگه بخوایم یک فایل رو روی گوشی سرچ کنیم این خودش زبون یونیتی رو به اندروید ترجمه می کنه و دیگه نیاز نیست دردسر کد نویسی زیاد تحمل کنید.

در مثال ابتدا بررسی می شه آیا پکیجی با اسامی وارد شده در آرایه ما روی اندروید نصب شده یا نه

اگر نصب بود پنلی رو فعال می کنیم که روی منوی اصلی بازی قرار داشته باشه که دیگه نشه روی ایتم های دیگه کلیک کرد:



public GameObject hack;
hack.SetActive (true);


همچنین مسیر "/mnt/sdcard/LuckyPatcher/" برای مطمئن شدن از نصب لاکی پچر چک میشه. اینم اگه وجود داشت اون پنل هک رو فعال می کنیم.

در غیر هر دو شرط فوق آنتی هک غیر فعال میشه.

کد رو هم رئیس علی یردون ساخته میذارم استفاده کنید(من فقط کمی توضیح گذاشتم متوجه بشن مبتدی تر ها). بفرمایید:


public GameObject hack;
public string hackName = "/mnt/sdcard/LuckyPatcher/";
public string[] packageNames;
void Awake()
{
for (int a = 0; a < packageNames.Length; a++) {
if (AndroidNativeFunctions.isInstalledApp (packageNames[a])) {
hack.SetActive (true);
StartCoroutine (Hacked ());
}
}
if (System.IO.Directory.Exists (hackName))
{
hack.SetActive (true);
StartCoroutine (Hacked ());
}
}
IEnumerator Hacked()
{
yield return new WaitForSeconds (3f);
Application.LoadLevel ("MainMenu");
}

دانلود پکیج AndroidNativeFunctions برای حل مشکل لاکی پچر:
فقط 30 کیلوبایت

http://s9.picofile.com/file/8300377942/AndroidNativeFunctions_unitypackage.html
آموزش ساخت ساعت در یونیتی

ابتدا یک گیم آبجکت به نام clock میسازیم .
سپس یه گیم آبجکت hour , minute , second ساخته و زیر مجموعه clock میکنیم .
سه کیوب هم میسازیم و زیر مجموعه سه گیم آبجکت میکنیم.

خوب الان یه کد سی شارپ باز میکنیم :
using UnityEngine;
using System;
public class ClockAnimator : MonoBehaviour { private const float hoursToDegrees = 360f / 12f, minutesToDegrees = 360f / 60f,
secondsToDegrees = 360f / 60f;
public Transform hours, minutes, seconds;
public bool analog;
private void Update () { if (analog) { TimeSpan timespan = DateTime.Now.TimeOfDay;
hours.localRotation = Quaternion.Euler( 0f, 0f, (float)timespan.TotalHours * -hoursToDegrees); minutes.localRotation = Quaternion.Euler( 0f, 0f, (float)timespan.TotalMinutes * -minutesToDegrees); seconds.localRotation = Quaternion.Euler( 0f, 0f, (float)timespan.TotalSeconds * -secondsToDegrees);
} else { DateTime time = DateTime.Now;
hours.localRotation = Quaternion.Euler(0f, 0f, time.Hour * -hoursToDegrees);
minutes.localRotation = Quaternion.Euler(0f, 0f, time.Minute * -minutesToDegrees);
seconds.localRotation = Quaternion.Euler(0f, 0f, time.Second * -secondsToDegrees);
}
}
}

بعد هم گیم آبجک ها رو نسبت دهی کنید
bazaar-unity3d-store-v1.8.unitypackage
282.4 KB
🔸 پکیج کاربردی استفاده از پرداخت درون برنامه ای.

🌐 در مارکت بازار 🌐
🔶 #یونیتی

رفتن به مرحله ی دلخواه با کلیک روی باتن

using UnityEngine;
using UnityEngine.UI;
using System.Collections;
public class Move : MonoBehaviour {

public Button btn1;

void Start () {
btn1.onClick.AddListener(TaskOnClick);
}

void TaskOnClick(){
SceneManager.LoadScene(" اسم مرحله دلخواه");
}

}
@UnityEngine
#یونیتی
آموزش ساخت صفحه لودینگ در یونیتی
@UnityEngine