Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Перевод на YSI

Статус
В этой теме нельзя размещать новые ответы.

Nister_Just

Умник
Помогите перевести викторину на YSI\y_ini сохранения и перевести в мод и сделайте ,чтобы за правильный вопрос приз давало pDollar += 5. Если , что у меня zcmd стоит! Спасибо тем кто поможет!

PHP:
#include <a_samp>
#include <mxINI>
#define Cvet 0x00FFFAFF
new Quest=0;
enum QInfo
{
	qQuestion[512],
	qAnswer[40],
};
new string[512];
new QuizTimer;
new QuizNow;
new QuestInfo[104][QInfo];
forward LoadViktorina();
public LoadViktorina()
{
	new stringi[512];
	new delim;
	new File = iniOpen("Quest.ini");
	if(File < 0) return 1;
	else
	{
		for(new x =0;x < INI_MAX_KEYS_IN_FILE;x++)
		{
			format(string,sizeof(string),"q%d",x);
			new z = iniGet(File,string,stringi);
			if(z < 0) {}
			else
			{
				delim = strfind(stringi,"|",true,0);
				new l[512];
				new s[40];
				strmid(l,stringi,0,delim);
				strmid(s,stringi,delim+1,sizeof(stringi));
				format(QuestInfo[x][qQuestion],strlen(l)+1,"%s",l);
				format(QuestInfo[x][qAnswer],strlen(s)+1,"%s",s);
				/*strmid(QuestInfo[x][qQuestion],stringi,0,delim);
				strmid(QuestInfo[x][qAnswer],stringi,delim+1,sizeof(stringi));*/
				Quest++;
			}
		}
	}
	QuizTimer = 305;
	QuizNow = random(Quest);
	SetTimer("QuizTime",1000,1);
	return 1;
}
forward QuizTime();
public QuizTime()
{
	QuizTimer --;
	if(QuizTimer <=0)
	{
		format(string,sizeof(string),"{FFD700}[Викторина]: {FFFFE0}Никто не ответил на вопрос. Правильный ответ был: %s",QuestInfo[QuizNow][qAnswer]);
		SendClientMessageToAll(Cvet,string);
		QuizNow = random(Quest);
		format(string,sizeof(string),"{FFD700}[Викторина]: {FFFFE0}Новый вопрос: %s. Время пошло.",QuestInfo[QuizNow][qQuestion]);
		SendClientMessageToAll(Cvet,string);
		QuizTimer = 305;
	}
	if(QuizTimer == 100||QuizTimer == 60||QuizTimer == 140||QuizTimer == 200)
	{
		format(string,sizeof(string),"{FFD700}[Викторина]: {FFFFE0}Ответа еще нет. А я напоминаю что вопрос у нас %s",QuestInfo[QuizNow][qQuestion]);
		SendClientMessageToAll(Cvet,string);
	}
}
public OnFilterScriptInit()
{
	LoadViktorina();
	format(string,sizeof(string),"{FFD700}[Викторина]: Первый вопрос {FFFFE0}%s",QuestInfo[QuizNow][qQuestion]);
	SendClientMessageToAll(Cvet,string);
	return 1;
}
public OnPlayerText(playerid,text[])
{
	if(strfind(text,QuestInfo[QuizNow][qAnswer],true) != -1)
	{
		GivePlayerMoney(playerid,150);
		format(string,sizeof(string),"{FFD700}[Викторина]: {FFFFE0}%s {FFD700} правильно отвечает на вопрос. Ответ: %s",Name(playerid),QuestInfo[QuizNow][qAnswer]);
		SendClientMessageToAll(Cvet,string);
		QuizNow = random(Quest);
		format(string,sizeof(string),"{FFD700}[Викторина]: {FFFFE0}Новый вопрос: {FFD700}%s. {FFFFE0}Время пошло.",QuestInfo[QuizNow][qQuestion]);
		SendClientMessageToAll(Cvet,string);
		return 0;
	}
	return 1;
}
public OnPlayerConnect(playerid)
{
	format(string,sizeof(string),"{FFD700}[Викторина]: {FFFFE0}%s",QuestInfo[QuizNow][qQuestion]);
	SendClientMessage(playerid,Cvet,string);
	return 1;
}
forward split(const strsrc[], strdest[][], delimiter);
public split(const strsrc[], strdest[][], delimiter)
{
	new i, li;
	new aNum;
	new len;
	while(i <= strlen(strsrc)){
	    if(strsrc[i]==delimiter || i==strlen(strsrc)){
	        len = strmid(strdest[aNum], strsrc, li, i, 128);
	        strdest[aNum][len] = 0;
	        li = i+1;
	        aNum++;
		}
		i++;
	}
	return 1;
}
stock Name(playerid) { new pl[24]; GetPlayerName(playerid,pl,24); return pl; }
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу