1394/9/15، 04:21 عصر
بسم الله الرّحمن الرّحیم
سلام، چند روز پیش به دلایلی تصمیم گرفتم اوّلین افزونهی کانستراکتم رو بسازم، و این افزونه چیزی نیست جز Node Downloader.
کار این پلاگین دانلود یک فایل و ذخیرهی اون در سیستم بازیکن هست. مثلاً میتونید برای ایجاد سیستم آپدیت بازیتون ازش استفاده کنید (خود بازی بیاد نسخهی جدید رو دانلود و ذخیره کنه).
این پلاگین فقط برای خروجی NW.js (و Electron) کار میکنه، به همین دلیل اسمش رو گذاشتم Node Downloader.
دانلود نسخهی ۱.۲
دانلود پلاگین Node Downloader به همراه مثال
دانلود فایل c2addon پلاگین به تنهایی
اکشنها
۱. Start download a file
شروع به دانلود فایل مورد نظر میکند، و سه پارامتر میگیرد:
Tag: یک اسم دلخواه، در مواقعی که میخواهید چند دانلود همزمان داشته باشید، برای تفکیک فایلها از هم، از این اسم استفاده میشود.
URL: آدرس اینترنتی فایلی که قرار است دانلود شود.
Path: محلّ ذخیرهی فایل پس از دانلود در سیستم کاربر.
کاندیشنها
۱. On completed
هر موقع دانلود فایل مورد نظر به پایان برسد و در سیستم کاربر ذخیره شود، این ایونت فراخوانی میشود.
۲. On error
هر موقع در دانلود فایل به خطایی برخورد کنیم، این ایونت فراخوانی میشود. خطاهای رایج عبارتند از:
الف) عدم پشتیبانی از Node (اگر بازی در بستری غیر از NW.js یا Electron اجرا شده باشد).
ب) عدم توانایی دانلود (وقتی لینک فایل معتبر نباشد یا اینترنت قطع باشد یا…).
ج) عدم توانایی ذخیرهی فایل (مثلاً وجود نداشتن درایو یا…)
۳. On progress
فایلهای پرحجم برای دانلود تکه تکه میشوند، و این تکهها پشت سر هم ارسال میشوند تا فایل کاملاً دریافت شود. هر موقع یکی از این تکهها دریافت شود، این ایونت اجرا میشود، و این موقع است که به اکسپرشن Percent دسترسی خواهیم داشت.
اکسپرشنها
۱. Percent
این اکسپرشن بعد از اینکه هر تکه از فایل مورد نظر ما دریافت شد، به ما میگوید که به صورت کلّی چند درصد از فایل دانلود شده است، لذا از این اکسپرشن فقط در ایونت On Progress استفاده کنید.
۲. TotalSize
حجم کلّی فایل مورد نظر را میدهد. این اکسپرشن فقط در هنگام دانلود معتبر است، و در سایر مواقع مقدار 1- را به ما میدهد.
در نهایت کسانی که دوست دارند در توسعهی این پلاگین به ما کمک کنند، میتونن به صفحهی گیتهاب این پلاگین رجوع کنند:
https://github.com/sabereen/Construct2-P...Downloader
تغییرات نسخهی ۱.۲
دانلود نسخههای قدیمی
نسخهی ۱.۰
سلام، چند روز پیش به دلایلی تصمیم گرفتم اوّلین افزونهی کانستراکتم رو بسازم، و این افزونه چیزی نیست جز Node Downloader.
کار این پلاگین دانلود یک فایل و ذخیرهی اون در سیستم بازیکن هست. مثلاً میتونید برای ایجاد سیستم آپدیت بازیتون ازش استفاده کنید (خود بازی بیاد نسخهی جدید رو دانلود و ذخیره کنه).
این پلاگین فقط برای خروجی NW.js (و Electron) کار میکنه، به همین دلیل اسمش رو گذاشتم Node Downloader.
دانلود نسخهی ۱.۲
دانلود پلاگین Node Downloader به همراه مثال
دانلود فایل c2addon پلاگین به تنهایی
اکشنها
۱. Start download a file
شروع به دانلود فایل مورد نظر میکند، و سه پارامتر میگیرد:
Tag: یک اسم دلخواه، در مواقعی که میخواهید چند دانلود همزمان داشته باشید، برای تفکیک فایلها از هم، از این اسم استفاده میشود.
URL: آدرس اینترنتی فایلی که قرار است دانلود شود.
Path: محلّ ذخیرهی فایل پس از دانلود در سیستم کاربر.
کاندیشنها
۱. On completed
هر موقع دانلود فایل مورد نظر به پایان برسد و در سیستم کاربر ذخیره شود، این ایونت فراخوانی میشود.
۲. On error
هر موقع در دانلود فایل به خطایی برخورد کنیم، این ایونت فراخوانی میشود. خطاهای رایج عبارتند از:
الف) عدم پشتیبانی از Node (اگر بازی در بستری غیر از NW.js یا Electron اجرا شده باشد).
ب) عدم توانایی دانلود (وقتی لینک فایل معتبر نباشد یا اینترنت قطع باشد یا…).
ج) عدم توانایی ذخیرهی فایل (مثلاً وجود نداشتن درایو یا…)
۳. On progress
فایلهای پرحجم برای دانلود تکه تکه میشوند، و این تکهها پشت سر هم ارسال میشوند تا فایل کاملاً دریافت شود. هر موقع یکی از این تکهها دریافت شود، این ایونت اجرا میشود، و این موقع است که به اکسپرشن Percent دسترسی خواهیم داشت.
اکسپرشنها
۱. Percent
کد:
NodeDownloader.Percent
۲. TotalSize
کد:
NodeDownloader.TotalSize("Tag")
در نهایت کسانی که دوست دارند در توسعهی این پلاگین به ما کمک کنند، میتونن به صفحهی گیتهاب این پلاگین رجوع کنند:
https://github.com/sabereen/Construct2-P...Downloader
تغییرات نسخهی ۱.۲
- رفع مشکل: نسخهی ۱ در حالت minify کار نمیکرد و شما مجبور بودید هنگام خروجی تیک minify را بردارید.
- عملکرد (Performance): در نسخهی قبل برای دانلود فایلهای پرحجم با مشکل مواجه میشدیم، زیرا که ابتدا فایل به صورت کامل روی رم دانلود میشد و در انتها به هارد دیسک منتقل میشد، ولی در این نسخه مستقیماً به هارد دیسک منتقل میشود.
دانلود نسخههای قدیمی
نسخهی ۱.۰
معجزات طبیعت هایی هستند که با آنها مأنوس نشدهایم
و طبیعت معجزهایست که با آن انس گرفتهایم
علی صفایی حائری