حل شده ساخت کد جایزه
#1
 سلام
هرچی گشتم کد جایزه پیدا نکردم
میخوام مصلا هر روز ۱ کد رو تو سایت خودم بنویسم بعد اگر پلیر زد کد رو جایزه بگیره ولی بلد نیستم
بعد میخوام مثلا تو بازی یه بخش هست رکوردی
میخوام پلیر فقط مثلا ۲ بار بتونه تو بخش رکوردی بازی کنه
بعد اینکه مثلا من برای بازیم تو ایتا کانال زدم بعد چجوری بگم که پلیر تاچ کرد فلان چیز رو بره به کانال ایتا من

 
بالاخره انتظار ها به پایان رسید:
ریزی منتشر شد! 
  پاسخ


 سپاس شده توسط:
#2
(1399/10/21، 05:19 عصر)mahdi13862 نوشته است:  سلام
هرچی گشتم کد جایزه پیدا نکردم
میخوام مصلا هر روز ۱ کد رو تو سایت خودم بنویسم بعد اگر پلیر زد کد رو جایزه بگیره ولی بلد نیستم
بعد میخوام مثلا تو بازی یه بخش هست رکوردی
میخوام پلیر فقط مثلا ۲ بار بتونه تو بخش رکوردی بازی کنه
بعد اینکه مثلا من برای بازیم تو ایتا کانال زدم بعد چجوری بگم که پلیر تاچ کرد فلان چیز رو بره به کانال ایتا من
همه چیزایی که شما می خواید خیلی سادن.
کافیه یکم آموزش های مبتدی رو تو نت ببینید.
یکم آموزش کار با ajax بلد باشید همه اینا امکان پذیره.
توی همین انجمن خودمون هم که سرچ کنید آموزش همه موارد بالا هست.
سپاس فراوان.
فرزاد شریفی هستم بنیانگذار مجموعه موسسه های FG Studio
و گروه بازی سازی farzadgame سابق

--------------------FG Studio--------------------
  پاسخ


 سپاس شده توسط: ᔕinaᗪehghani
#3
ببخشید میشه تایپک ها شو برام بفرستید
بالاخره انتظار ها به پایان رسید:
ریزی منتشر شد! 
  پاسخ


 سپاس شده توسط:
#4
(1399/10/21، 05:19 عصر)mahdi13862 نوشته است:  سلام
هرچی گشتم کد جایزه پیدا نکردم
میخوام مصلا هر روز ۱ کد رو تو سایت خودم بنویسم بعد اگر پلیر زد کد رو جایزه بگیره ولی بلد نیستم
بعد میخوام مثلا تو بازی یه بخش هست رکوردی
میخوام پلیر فقط مثلا ۲ بار بتونه تو بخش رکوردی بازی کنه
بعد اینکه مثلا من برای بازیم تو ایتا کانال زدم بعد چجوری بگم که پلیر تاچ کرد فلان چیز رو بره به کانال ایتا من

سلام

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

1- در رابطه با سؤال اولتون که در انجمن زیاد دربارش بحث شده و آقا فرزاد هم راهنمایی کردن

2- در مورد سوال دومتون باید یه متغییر بسازید و مقدار اولیش رو صفر قرار بدید و بگید اگر روی دکمه ی شروع بخش رکوردی زده شد بررسی بشه که اون متغییر مساوی 2 هست یا نه، اگر نه یجوری به کاربر بگید که تعداد دفعات ورود به این بخش به اتمام رسیده و اگر متغییر برابر با 2 نبود بگید که یکی به متغییر اضافه و وارد بخش رکوردی بشه

3- هر کانال ایتا یه لینک داره که اگر داخل مرورگر به اون لینک برید براتون یه پیغام برای عضویت در کانال میده (البته برای تلگرام که اینجوریه) پس میتونید بگید که با تاچ اون دکمه اون لینک باز بشه به همین سادگی!

موفق باشید...
نقل قول:
 لحظه ها را ميگذرانديم تا به خوشبختي برسيم؛ غافل از اينكه خوشبختي در آن لحظه ها بود كه گذرانديم.
  پاسخ


 سپاس شده توسط: kiarashb
#5
سلام؛
راجع به پاسخ سوال اولتون باید عرض کنم که مشخصاً باید با یک سرور ارتباط برقرار کنین که خُب اینکار میتونه توسط شیء اِیجَکس (AJAX) کانستراکت انجام بشه.
شما یا یک سرور (هاست) دارین و همچنین بلد هستین با یک تکنولوژی یا زبان سمت سرور کار کنین یـا هم اینکه به یک زبان یا تکنولوژی سمت سرور تسلط ندارین.
توی حالت دوم چاره ای جز استفاده از یک API (وب سرویس) ندارین. من بهتون پیشنهاد میکنم از وب سرویس JSON Blob استفاده کنین. جزئیات کامل استفاده از وب سرویس رو میتونین از این داکیومنت مطالعه کنین ولی من سعی میکنم کلیت نحوه استفاده از این وب سرویس در کانستراکت رو براتون شرح بدم.
پیش نیازها:
قبل از هر چیز شما باید با قالب اطلاعاتی جیسون (JSON) آشنا باشین که اگر نیستین میتونین با یک سرچ کوچیک توی اینترنت و انجمن در موردش اطلاعات کسب کنین. همینطور باید پلاگین JSON رو برای کانستراکت نصب داشته باشین.
طبیعیه که باید شیء (پلاگین) اِی جَکس رو هم به پروژه اضافه کنین. اما پلاگین AJAX کانستراکت متأسفانه هدرهای پاسخ HTTP رو برگشت نمیده که خُب این میتونه برای ما مسئله ساز باشه! برای همین لازمه یه تغییرات کوچیکی توی پلاگین اعمال کنیم. پس لطف کنین از این لینک پلاگین AJAX ویرایش شده رو دانلود کنین و جایگزین پلاگین AJAX پیشفرض کانستراکت بکنین. 
اما تغییری که توی پلاگین اِی جَکس اعمال شده چیه؟ ما یک اکسپرشن به نام  AJAX.responseh اضافه کردیم که هدرهای پاسخ HTTP هر درخواست (ریکوئست) رو به ما بر میگردونه.
نکته مهم درباره سـاخـتار رشته JSON :
دقت کنین که رشته جیسون شما باید متشکل از شناسه توکن جایزه و توضیحات مربوطه باشه. به طوری که هر شناسه یک Node از رشته جیسون رو تشکیل میده. لازم به ذکره که به هیچ وجه اجباری نیست که شما از این پترن (الگو) تبعیت کنین. ایونت هایی که من در ادامه نوشتم بر مبنای این الگو هستن بنابراین اگر میخواین دقیقاً از همون ها الهام بگیرین لازمه که از پترن (الگو) زیر تبعیت کنین و اگر هم میخواین که پترن (الگو) منحصر به خودتون رو داشته باشین باید در همه ایونت ها به جز ایونت های مربوط به فرآیند های مدیریتی تجدید نظر کنین. 
کد:
{"Token1":"توضیحات","Token2" : "توضیحات", ...}
این توضیحات میتونن هر چیزی باشن. مثلاً مقدار امتیازی که قراره بعد از وارد کردن شناسه توکن به کاربر اضافه بشه و یا هر چیز دیگه ای!
میتونین برای زمان دار کردن توکن ها تایم استمپ لحظه ایجاد هر توکن رو به عنوان توضیحاتش درج کنین و بعد با لحظه تایم استمپ ورود توکن توسط کاربر مقایسه اش کنین تا بتونین ملاحظات زمانی رو برای توکن های جایزه در نظر بگیرین.
فـرآیندهای مدیریتی:
هر آنچه که توی این قسمت در موردش صحبت میکنیم فقط و فقط جنبه مدیریتی داره و کـاربرها نباید به این مسائل اشراف داشته باشن. پس حواستون باشه مکانیزم هایی که در ادامه تشریح میشن رو وسط ایونت های بازیتون قرار ندین و در قالب یک پروژه جدا مخصوص خودتون (پنل مدیریتی) مکانیزم ها رو تعبیه کنین.
  • * ایجاد دایرکتوری ذخیره سازی محتویات جیسون:
اگر قصد دارین برای اولین بار محتویات جیسون شامل توکن های جایزه رو ذخیره سازی کنین باید یک درخواست HTTP از نوع POST ارسال کنین. البته دو هدر Content-Type و Accept رو هم باید به نحوی تنظیم کنیم که متناسب با MIME جیسون (application/json) بشن. فرض کنیم میخوایم رشته جیسون زیر رو ذخیره سازی کنیم. 
کد:
{"b412368":1610356715}
برای انجام این کار در سمت کانستراکت کافیه به شکل زیر ایونت بنویسین:
[تصویر:  sfkj.png]
شناسه ای که به شکل یک Pop-up بعد از ارسال موفقیت آمیز ریکوئست نمایش داده میشه رو حتماً باید برای پیگیری های آینده یکجا یادداشت کنین. شناسه ای که من بعد از ارسال درخواست POST به دست آوردم به شکل زیر بود:
کد:
c2ab25ac-53ee-11eb-8ac3-913a24b09ad1
  • *بروزرسانی (Update) رشته جیسون ذخیره شده:
فرض کنین به هر دلیلی میخواین رشته جیسونی که ذخیره کردین رو ویرایش کنین. برای این منظور باید یک درخواست HTTP از نوع PUT ارسال کنین. البته دو هدر Content-Type و Accept رو هم باید به نحوی تنظیم کنیم که متناسب با MIME جیسون (application/json) بشن.
[تصویر:  %D8%B7%D8%B3%D9%84.png]
دقت کنین که حتماً داشتن شناسه ای که در مرحله ایجاد دایرکتوری بهمون برگشت داده شد لازمه. در اینجا من این شناسه رو در قالب متغیر گلوبالی به نام ID تعریف کردم و رشته جیسون جدید رو در قالب متغیر گلوبالی به نام New_JSON تعریف کردم.
  • *حذف (Delete) دایرکتوری ایجاد شده:
اگر قصد داشته باشین به هر دلیلی دایرکتوری که وب سرویس برای شما ایجاد کرده از بین بره (حذف بشه) باید یک درخواست HTTP از نوع DELETE ارسال کنین. البته دو هدر Content-Type و Accept رو هم باید به نحوی تنظیم کنیم که متناسب با MIME جیسون (application/json) بشن.
[تصویر:  jh.png]
دقت کنین که بعد از انجام عملیات حذف دایرکتوری، عملاً شناسه ای که در اختیار داریم باطل محسوب میشه و کارایی نداره. بنابراین باید اقدام به ساخت یک دایرکتوری جدید کنیم.
بررسی صحت توکن وارد شده از جانب کاربر:
اگر بخوایم صحت توکنی که کاربر وارد کرده رو اعتبارسنجی کنیم باید یک درخواست HTTP از نوع GET به شکل زیر ارسال کنیم. البته دو هدر Content-Type و Accept رو هم باید به نحوی تنظیم کنیم که متناسب با MIME جیسون (application/json) بشن. در نمونه زیر من یک تکست باکس و باتن (دکمه) قرار دادم. کـاربر با وارد کردن توکن جـایزه در تکست باکس و بعد هم کلیک بر روی دکمه (باتن) میتونه متوجه بشه که توکنی که وارد کرده معتبره یا خیر.
[تصویر:  %D8%B3%D8%A8%D8%AA.png]
جمع بندی و ذکر چند مسئله مهم:
شکی نیست که مطمئن ترین و بهترین روش استفاده از اسکریپت سمت سروری هست که خودمون نوشتیم. استفاده از API (وب سرویس) میتونه برای مقیاس کم و همینطور استفاده ابتدایی مناسب باشه اما برای مقیاس بزرگتر و در مواجهه با کاربران حرفه ای و نیاز حرفه ای تر کار دشوارتری رو در پیش داریم.
ایراداتی از نظر امنیتی به این روش وارده. هـر کـاربـری قادره تمامی اطلاعات جیسون ذخیره شده رو با آنالیز درخواست های HTTP و یا متغیرهای بازی مشاهده کنه. در ضمن کاربر حرفه ای میتونه به راحتی با به دست آوردن شناسه دایرکتوری شما کـه در قالب یک متغیر یا ثابت (Constant) تعریفش کردین و کمی آزمون و خطا عملاً کنترل ماجرا رو به دست بگیره و هر کاری دلش خواست انجام بده.
خلاصه کلام اینکه این روش میتونه کار راه انداز باشه ولی راه حل همیشگی شما نمیتونه باشه!
اگر احساس میکنین که نمیخواین کارتون رو الگوریتمیک و منظم در بیارین و نیازی به پنل مدیریت ندارین میتونین یک صفحه جداگانه در سرویس های وبلاگ مثل بلاگفا، رزبلاگ و ... بسازین و بعد به کمک AJAX (اِی جَکس) در سمت کانستراکت توکن های جایزه رو دریافت کنین و حالا با اکسپرشن هایی مثل  tokenat و ... پردازش های لازمه رو انجام بدین. اینطوری نیازی به استفاده از این وب سرویس (API) که راجع بهش بحث کردم ندارین. در انجمن هم قبلتر بارها راجع بهش بحث شده و حتی تا جایی که به خاطر دارم «محمد 82» یه تاپیک آموزشی با همین مضمون ایجاد کرده بود.
در هر حال شما با یکم خلاقیت و آزمون و خطا به سادگی میتونین یک پنل مدیریتی حرفه ای برای خودتون با اتکا به همین وب سرویس (API) درست کنین.
میتونین سورس ایونت هایی که تشریح کردم رو از اینجا دانلود کنین.
موفق باشین.
غایب
  پاسخ


 سپاس شده توسط: ᔕinaᗪehghani ، mojtaba_1 ، mhp ، M.gh ، saman ، oak
#6
بله !
نفهمیدن چیشد؟
اگر درباره ساخت کد جایزه ویدیو اموزشی دارید برای بفرستید
بالاخره انتظار ها به پایان رسید:
ریزی منتشر شد! 
  پاسخ


 سپاس شده توسط:
#7
عجب
این همه توضیح دادن
به کاکتوس اب داده بودن تا الان موز میداد 22
یک چند بار بخونین متوجه میشین /:
  پاسخ


 سپاس شده توسط: MohammadHadi ، ᔕinaᗪehghani
#8
سلام 
این کار خیلی سادست و قبلا هم در این مورد سورسی گذاشته بودم بنده از طریق لینک زیر به تاپیک مورد نظر برید و سورس رو با توضیحات دریافت کنید
  پاسخ


 سپاس شده توسط: ᔕinaᗪehghani
#9
سلام
ببخشید سورس دیدم و تو پروژه ام بردم ولی نشد
همش میگه کد اشتباه وارد شده تو صفحه سایتم فقط ۱۲۳۴۵۶ نوشتم و هر چی میزنم نمیشه
Object moved


 
بالاخره انتظار ها به پایان رسید:
ریزی منتشر شد! 
  پاسخ


 سپاس شده توسط:
#10
(1399/10/26، 08:47 عصر)mahdi13862 نوشته است: سلام
ببخشید سورس دیدم و تو پروژه ام بردم ولی نشد
همش میگه کد اشتباه وارد شده تو صفحه سایتم فقط ۱۲۳۴۵۶ نوشتم و هر چی میزنم نمیشه
Object moved
سلام و عرض شب بخیر ؛

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

موفق باشید .
  پاسخ


 سپاس شده توسط: ᔕinaᗪehghani ، M.gh ، oak


موضوع‌های مشابه…
موضوع نویسنده پاسخ بازدید آخرین ارسال
Information پرداخت درون برنامه مایکت کوردوا ya mahdi 0 229 1404/1/17، 05:43 عصر
آخرین ارسال: ya mahdi
  نحوه خروجی اندروید کوردوا ya mahdi 0 176 1404/1/11، 04:06 عصر
آخرین ارسال: ya mahdi
Wink حل شده مقادير لازم در environment variable ᔕinaᗪehghani 24 11,595 1403/10/23، 12:10 صبح
آخرین ارسال: Tggi
  تپسل .....فروشگاه Hamidreza 3 1,932 1403/10/22، 11:57 عصر
آخرین ارسال: Tggi
  خروجی اندروید با Intel xdk ya mahdi 0 130 1403/8/25، 02:08 عصر
آخرین ارسال: ya mahdi

پرش به انجمن: