فول کده
ورود عضویت
تبلیغات

ذخیره تنظیمات بازی با PlayerPrefs در یونیتی

هادی اکبرزاده
نوشته شده توسط هادی اکبرزاده

ذخیره تنظیمات بازی با PlayerPrefs در یونیتی

طبیعتا توی اکثر بازی ها ما یک سری تنظیماتی رو برای کاربر قرار میدیم… اما بعد از اعمال تنظیمات بایستی این مقدارهارو جایی نگه داریم و هنگام بالا اومدن بازی لودشون کنیم…

در این آموزش میخوایم از کلاس PlayerPrefs استفاده کنیم، کلاسی که این امکان رو به ما میده تا داده های اولیه ای مثل String و Int و Float رو ذخیره کنیم…

نکته: این کلاس همان قابلیت Preferences در برنامه نویسی اندروید هست، پس بعد ذخیره هم طبیعتا باید محل Pref های برنامه نصب شده باشه.
نکته: این کلاس  در ویندوز، مقدار هارو در رجیستری ویندوز ثبت می کنه که در ادامه آدرس دقیقش رو بهتون می گم.

نیازی به ساخت نمونه از این کلاس نیست و متدهاش به صورت static تعریف شدن… بزارید اول چند تا از متدهای مهم این کلاسو بنویسم…


قرار دادن مقدار در Pref

  • متد SetFloat
  • متد SetInt
  • متد SetString

هر متد در وردی اولش یک رشته می گیره که به عنوان کلید یا اسم خونه برای ذخیره استفاده میشه و توی ورودی دومش هم مقدار Float یا Int یا String رو می گیره.

ذخیره تغییرات

خب ما تا زمانی که متد Save رو فراخونی نکنیم تغییرات ذخیره نمی شن… یغنی هرچی با متدهای بالا مقدار قرار بدیم ولی Save رو فراخونی نکنیم تاثیری نداره…

خواندن مقدارها

  • متد GetFloat
  • متد GetInt
  • متد GetString

بعد از فراخونی متد مورد نظر برای گرفتن مقدار مورد نظر باید مقدار کلید رو بنویسیم. اما این متد ها دو OVERLOAD مختلفی دارن که در ورودی دوم هم می تونیم مقدار پیش فرض رو مشخص کنیم تا اگه این کلید وجود نداشت اون برگردونده بشه

بررسی وجود داشتن یک کلید

شاید دوست داشته باشید بررسی کنید که آیا با یک کلیدی قبلا مقداری تنظیم شده یا نه که می تونی داز متد HasKey استفاده کنید که توی ورودیش از ما اسم کلید رو دریافت می کنه و در خروجی بهمون true یا false برمی گردونه.

حذف یک مقدار یا حذف کردن مقادیر

طبیعیه که ممکنه یه مقداری رو بخواین حذف کنید یا بخواین کل مقدار هارو یک جا حذف کنید که در این صورت می تونید از دو متد DeleteKey و DeleteAll استفاده کنید.
نکته: توجه داشته باشید که یادتون نره این هم جز تغییراته و باید بعد حذف با متد Save تغییرات به فایل Pref اعمال بشه…

محل ذخیره در رجیستری ویندوز

HKEY_CURRENT_USER/Software/AppDataLow/CompanyName/ProjectName
HKEY_CURRENT_USER/Software/Unity/UnityEditor/CompanyName/ProjectName

یکی از دو مسیر بالا محل ذخیره PlayerPrefs توی ویندوزه که البته بستگی دار پروژه رو در خود یونیتی اجرا کرده باشید یا این که Build کرده باشید.

اگه مشکلی با این بخش دارید از نظرات مطرح کنید.

 

نکته: البته می تونید از این قابلیت ذخیره سازی برای چیزهای دیگه ای به جز تنظیمات هم استفاده کنید ولی به دلیل امنیت زیادی که نداره و کاربر می تونه به راحتی ویرایشش کنه (البته کاربرای نسبتا حرفه ای) پس فقط برای تنظیمات استفاده کنید خوبه.

 

تبلیغات
0
کانال تلگرام فول کده

درباره نویسنده

هادی اکبرزاده

هادی اکبرزاده

[ مدیر فول کده ]

متولد آبان 74. کسی که به دنبال حقیقت میرود با کسی که از آن فرار میکند در حالی که علمی به آن ندارد، هرگز یکی نیست!
Instagram
Telegram

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

قوانین نظرات

  • تعریف قسمت نظرات: سیستم نظرات، محلی است تا شما بتوانید دیدگاه خودتان را نسبت به پست قرار داده شده بنویسید.
  • نظرات شما دوستان عزیز در صورتی که به بهبود پست کمک کند با ذکر نامتان در پست قرار داده میشود.
  • برای سوال کردن نسبت به موضوع قرار داده شده در پست، نیازی به سلام و احوال پرسی نیست و این به خاطر ساده تر شدن نظرات میباشد.
  • دیدگاه شما باید درباره همین پست باشد، نظرات پست های دیگر فول کده را در قسمت نظرات مربوط به خودش بپرسید. در غیر اینصورت تایید یا پاسخ داده نمیشود.
  • اگر چیزی که گفته باشید در پست توضیح داده شده باشد، نظر شما تایید یا پاسخ داده نمیشود.
  • برای پاسخ دادن به نظرات دیگران از گزینه پاسخ کنار هر نظر استفاده کنید و یک نظر جدید ارسال نفرمایید. همانطور که برای نظر جدید، نباید از پاسخ دادن استفاده کنید.
  • نظرات کوتاهی مانند "مرسی"، "عالی بود" تایید نمیشوند و این به خاطر شلوغ نشدن قسمت نظرات میباشد.
  • این مورد ضروری نیست ولی بهتر است در سایت ثبت نام کرده و سپس با اکانت خود وارد شده و نظر خود را ارسال کنید.
  • قوانین نظرات در طول زمان در این قسمت اضافه و تغییر داده میشوند و میتوانید از این قسمت بررسی کنید.
  • این قوانین شامل پست های قدیمی نمیشود ولی نظرات پست های قدیمی نیز در صورت نیاز اصلاح خواهند شد.

نظرات ثبت شده بدون دیدگاه