رفتن به مطلب
  • 0

درخواست آموزش محصول مصرفی


vistamobile

سوال

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

لینک ارسال
به اشتراک گذاری در سایت های دیگر

ارسال‌های توصیه شده

داداش اونو نمیگم. میگم من به باتونم بگم بیا ده امتیاز ده امتیاز بده مثلا پاسخ صحیح بشه +10  و پاسخ غلط هم -10 . داداش شرمنده زیاد اذیتت میکنم ولی بخدا واجبه  :gol:  :gol:  :gol:  دست گلت درد نکنه 

مراحمی داداش ما دوست داریم

 

فهمیدم منظورتو 

 

بیا این شکلی کار کن 

 

تو پروسس گلوبال اکتیویتیمون ب اسم Main :

Dim emtiaz As Int = 100

تو اکتیویتی کریت :

Dim cf As CheckFile
 cf.Initialize 
cf.CheckSaveFile("file.txt",Label1,emtiaz)

حالا توی ساب کلیکی ک شرط گذاشتی اگه درست یا غلط بود امتیاز بده یا کم کنه :

'/ age shartet dorost bud
emtiaz = emtiaz + 10
'/age qalat bood
emtiaz = emtiaz - 10

حالا توی اکتیویتیای دیگتم ب ترتیب همین ککارو بکن و از مقدار امتیاز اکتیویتیMain استفاده کن

 

مثلا واسه چک فایل :

Dim cf As CheckFile
 cf.Initialize 
cf.CheckSaveFile("file.txt",Label1,Main.emtiaz)
لینک ارسال
به اشتراک گذاری در سایت های دیگر

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

لینک ارسال
به اشتراک گذاری در سایت های دیگر

داداش ممنون. پاسخ داد!! نتونستم تا فردا صبح صبر کنم دستبکار شدم. فقط یه سوال دیگه بعدش میرم. خوب؟ الان این مقدار رو چجوری کم و زیادش کنم؟  :gol:  :fekr:  :crazy:

لینک ارسال
به اشتراک گذاری در سایت های دیگر

توضیح دادم ک مختار جان

Dim cf As CheckFile
 cf.Initialize 
cf.CheckSaveFile("اسم فایل امتیاز ک قبلا سیو کردی.txt",Label1,"100000")

مثلا اینجا پسر خوبی بوده بهش ی میلیون امتیاز دادیم

میتونید امتیاژ منفی هم بدید 

 

 

مشکلت حل شده تاپیکو پاسخ داده شده بزن ببندمش داداش :gol:

لینک ارسال
به اشتراک گذاری در سایت های دیگر

داداش اونو نمیگم. میگم من به باتونم بگم بیا ده امتیاز ده امتیاز بده مثلا پاسخ صحیح بشه +10  و پاسخ غلط هم -10 . داداش شرمنده زیاد اذیتت میکنم ولی بخدا واجبه  :gol:  :gol:  :gol:  دست گلت درد نکنه 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

داداش همه رو رفتم فقط وقتی امتیاز رو برابر قرار میدم قرمزه :

emtiaz = emtiaz + 10

تو Sub Process_Globals هم قرارش دادم تو اکتویتی main.  :@  :@  :@  :@  :@

بخدا دارم دیونه میشم 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بازی تایمر نداره که!! تاینرشو حذف کردم. بدونه تایمره داداش. شما یه روشی بگو که بشه یه فایل رو تو تموم اکتیویتی ها بلودم. :fekr:  :gol:

 

شما میتونی از کلاس ماژول استفاده کنی

لینک ارسال
به اشتراک گذاری در سایت های دیگر

کلاس ماژول روشش چجوریه؟ داداش الیاس اومدی؟ مشکل من همچنان پابرجاست.  :'(  :gol:

لینک ارسال
به اشتراک گذاری در سایت های دیگر

سلام مختار جان

Dim lbl As Label
Dim emtiaz As Int = 0 ''//اول بازی
lbl.Text = emtiaz
''///بعد میای میگی اگه پاسخش درست بود 
emtiaz = emtiaz + 1
lbl.Text = emtiaz
''/اگر پاسخش غلط بود
emtiaz = emtiaz -1
lbl.Text = emtiaz

واسه پرداخت هم ک کاری نداره دیگه میای ی شرط میذاری اگر پرداخت انجام شد اون مقدار مورد نظرتو اضافه کنه ب امتیاز :fekr:

 

واسه سیو و لودش هم ک میتونی با File.WriteString یا File.WriteList کار کنی و واسه لود کردنش هم موقع بالا اومدن اکتیویتی ی شرط بذاری اگه موجود بود متن لیبل رو ک امتیاز هست برابر با امتیاز مورد نظرت قرار بده

جای دیگه ای مشکل داری :fekr: ??

 

دیتابیس هم میشه ولی خوب این ک خیلی سادده تره 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

اینجا مشکل دارم الیاس جان :

 

واسه سیو و لودش هم ک میتونی با File.WriteString یا File.WriteList کار کنی و واسه لود کردنش هم موقع بالا اومدن اکتیویتی ی شرط بذاری اگه موجود بود متن لیبل رو ک امتیاز هست برابر با امتیاز مورد نظرت قرار بده

:crazy:  :crazy:  :crazy:  :crazy:  :crazy:

الان بیشتر از 30 تا اکتویتی دارم . چجوری فراخونی کنم تو کل اکتیوتی ها باشه. 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

اینجا مشکل دارم الیاس جان :

:crazy:  :crazy:  :crazy:  :crazy:  :crazy:

الان بیشتر از 30 تا اکتویتی دارم . چجوری فراخونی کنم تو کل اکتیوتی ها باشه. 

 

30 تا اکتیویتی ؟؟؟ :| 

 

ببخش مختارجان میشه ی سوال کنم چرا 30تا اکتیویتی ؟؟؟

 

توی اکتیویتی هات از چ چیزایی استفاده میکنی ؟

متنه ؟

دکمس ؟

عکسه ؟

 

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

 

چیز خاصی داری تو هر اکتیویتی ؟

محتویاتش چیه ؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

از سه تا لی اوت استفاده کردم کلا. چون مدت زمان هر مرحله زیاده و واسه اینکه کار نپیچه بهم و اینکه از نقشه در بازی استفاده کنم(نفسم گرفت) اکتیوتی ها شده سی تا. هیچ چیز خاصی نداره و حتی از سه تا عکس اتفاده شده. همه مراحل هم با دیتا بیس زدم. حجمش کمه و سرعتش بالا. فقط سیستم امتیازیشو نمیدونم چجوری بزنم. یعنی بگم یه فایل باشه این فایل تو تموم اکتویتی ها حتی اکتویتی main.  بعد قابل تغییر باشه یعنی کم و زیاد بشه

 

فقط متن و دکمه (لیبل و باتونن و...) عکس نداره

لینک ارسال
به اشتراک گذاری در سایت های دیگر

اخه 30تا اکتیویتی ک خیلی ظلم میشه بهت :oops:

 

ببین بیا به راحتی همشو تو ی اکتیویتی اوکی کن فقط کدای اکتیویتیت زیاد میشه 

 

ببین تو هر اکتیویتیت ی تایمر هست ک مدتش ب پایان برسه اکتیویتی بعدو شروع میکنی دیگه مگه نه ؟؟

 

خوب بیا توی اکتیویتیت هر وقت تایمرت تموم شد همه ی ویو های اکتیویتیتو پاک کن یا کلا خالیش کن با این کد :

Activity.RemoveAllViews

و بعد خالی کردنش دوباره بیا با کدایی ک دادی و خودت میدونی اکتیویتی بعدیتو پیاده کن و زمان اونم تموم شد بازم پاک کن و یکی بعدیو بریز

 

این شکلی خیلی خیلی وقتت کمتر گرفته میشه 

تنها اشکالی ک داره شاید زیاد شدن کدهات توی اکتیویتیه و یا مثلا مجبور باشی چند تا تایمر تعریف کنی همین

 

این شکلی خیلی راحتم میتونی امتیاز بندیو پیاده کنی 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بازی تایمر نداره که!! تاینرشو حذف کردم. بدونه تایمره داداش. شما یه روشی بگو که بشه یه فایل رو تو تموم اکتیویتی ها بلودم. :fekr:  :gol:

لینک ارسال
به اشتراک گذاری در سایت های دیگر

خوب واسه اینکه نخوای هی کد لود و چک فایل واسه خودت بنویسی بیا این کارو کن

 

بیا موقعی ک پرداخت انجام شد با WriteString ی فایل ایجاد کن و امتیازتو تنظیم کن رو لیبل

 

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

Sub Class_Globals
	
End Sub


Public Sub Initialize

End Sub

Sub CheckSaveFile(FileName As String ,Label As Label , Emtiaz As Int) As Boolean
	If File.Exists(File.DirInternal , FileName) = True Then
		Label.Text = Emtiaz
		Else If File.Exists(File.DirInternal , FileName) = False Then
			'//فایل موجود نیست
	End If
End Sub

بعدش بیا در اکتیویتی کریت هر اکتیویتیت اینجوری بنویسش تا طبق کلاسی ک نوشتیم چک کنه و اگه فایل بود بهش امتیاز بده :

Dim cf As CheckFile
cf.Initialize
cf.CheckSaveFile("اسم فایلی ک سیو کردی موقع پرداخت","اسم لیبلت تو اکتیویتی","امتیازی ک دوس داری")
لینک ارسال
به اشتراک گذاری در سایت های دیگر

باشه . خودم هم یه ایده دارم اول اینو تست میزنم بعد اون

لینک ارسال
به اشتراک گذاری در سایت های دیگر

سلام

ببخشید وقت ندارم خیلی توضیح بدم راجع به روند کار و...

فقط اینو بگم که وقتی میخوای امتیاز کاربر رو ذخیره کنی بصورت کدشده ذخیره کن و بصورت آنکدشده نمایش بده چون اگه کد نشده باشه خیلی راحت هک میشه :oops:

لینک ارسال
به اشتراک گذاری در سایت های دیگر

سلام

ببخشید وقت ندارم خیلی توضیح بدم راجع به روند کار و...

فقط اینو بگم که وقتی میخوای امتیاز کاربر رو ذخیره کنی بصورت کدشده ذخیره کن و بصورت آنکدشده نمایش بده چون اگه کد نشده باشه خیلی راحت هک میشه :oops:

هک نمیشه داداش  :eynak:  شما خواستی بعد آماده شدن تست بزن هک کن  :oops: . سه بار پیچوندمش  :crazy:

لینک ارسال
به اشتراک گذاری در سایت های دیگر

داداش الیاس این CheckFile مربوط به کتابخونه خاصیه عایا؟ نمیزاره کلا قرمزه!! 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

داداش الیاس این CheckFile مربوط به کتابخونه خاصیه عایا؟ نمیزاره کلا قرمزه!! 

اسم کلسی ک ساختم و کداییو ک دادمت رو گذاشته بودم CheckFile

توام اسم کلستو بذار ب جاش :gol:

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

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

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...