Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- #include <sscanf2>
- enum adata
- {
- alarmobavjest[20],
- vrijeme[6],
- bool:alarmaktivan
- }
- new alarminfo[MAX_PLAYERS][adata];
- new Text:alarmtd[4];
- new PlayerText:alarmobavjesttd[MAX_PLAYERS];
- new nuliranje;
- public OnGameModeInit()
- {
- alarmtd[0] = TextDrawCreate(601.000000, 204.966674, "usebox");
- TextDrawLetterSize(alarmtd[0], 0.000000, 7.530862);
- TextDrawTextSize(alarmtd[0], 497.000000, 0.000000);
- TextDrawAlignment(alarmtd[0], 1);
- TextDrawColor(alarmtd[0], 0);
- TextDrawUseBox(alarmtd[0], true);
- TextDrawBoxColor(alarmtd[0], 102);
- TextDrawSetShadow(alarmtd[0], 0);
- TextDrawSetOutline(alarmtd[0], 0);
- TextDrawFont(alarmtd[0], 0);
- alarmtd[1] = TextDrawCreate(498.500000, 193.511093, "LD_SPAC:white");
- TextDrawLetterSize(alarmtd[1], 0.000000, 0.000000);
- TextDrawTextSize(alarmtd[1], 101.500000, 15.555565);
- TextDrawAlignment(alarmtd[1], 1);
- TextDrawColor(alarmtd[1], -16776961);
- TextDrawSetShadow(alarmtd[1], 0);
- TextDrawSetOutline(alarmtd[1], 0);
- TextDrawFont(alarmtd[1], 4);
- alarmtd[2] = TextDrawCreate(524.000000, 193.511108, "ALARM");
- TextDrawLetterSize(alarmtd[2], 0.504999, 1.587555);
- TextDrawAlignment(alarmtd[2], 1);
- TextDrawColor(alarmtd[2], -65281);
- TextDrawSetShadow(alarmtd[2], 0);
- TextDrawSetOutline(alarmtd[2], 1);
- TextDrawBackgroundColor(alarmtd[2], 51);
- TextDrawFont(alarmtd[2], 2);
- TextDrawSetProportional(alarmtd[2], 1);
- alarmtd[3] = TextDrawCreate(499.000000, 194.133346, "ld_grav:timer");
- TextDrawLetterSize(alarmtd[3], 0.449999, 1.600000);
- TextDrawTextSize(alarmtd[3], 23.000000, 13.688889);
- TextDrawAlignment(alarmtd[3], 1);
- TextDrawColor(alarmtd[3], -1);
- TextDrawSetShadow(alarmtd[3], 0);
- TextDrawSetOutline(alarmtd[3], 1);
- TextDrawBackgroundColor(alarmtd[3], 51);
- TextDrawFont(alarmtd[3], 4);
- TextDrawSetProportional(alarmtd[3], 1);
- nuliranje = SetTimer("find0",1000,true);
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- alarmobavjesttd[playerid] = CreatePlayerTextDraw(playerid, 500.500000, 209.688903, "OBAVJEST");
- PlayerTextDrawLetterSize(playerid, alarmobavjesttd[playerid], 0.307999, 1.183111);
- PlayerTextDrawTextSize(playerid, alarmobavjesttd[playerid], 598.500000, 147.466690);
- PlayerTextDrawAlignment(playerid, alarmobavjesttd[playerid], 1);
- PlayerTextDrawColor(playerid, alarmobavjesttd[playerid], -1);
- PlayerTextDrawUseBox(playerid, alarmobavjesttd[playerid], true);
- PlayerTextDrawBoxColor(playerid, alarmobavjesttd[playerid], 0);
- PlayerTextDrawSetShadow(playerid, alarmobavjesttd[playerid], 0);
- PlayerTextDrawSetOutline(playerid, alarmobavjesttd[playerid], 1);
- PlayerTextDrawFont(playerid, alarmobavjesttd[playerid], 2);
- PlayerTextDrawSetProportional(playerid, alarmobavjesttd[playerid], 1);
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- if(alarminfo[playerid][alarmaktivan]) { ResetAlarmVar(playerid); }
- return 1;
- }
- public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
- {
- if(newkeys & KEY_YES)
- {
- if(GetPVarInt(playerid,"AlarmZvoni") == 1)
- {
- for(new i; i < 4; i++)
- {
- TextDrawHideForPlayer(playerid,alarmtd[i]);
- }
- PlayerTextDrawHide(playerid,alarmobavjesttd[playerid]);
- SetPVarInt(playerid,"AlarmZvoni",0);
- return 1;
- }
- if(!alarminfo[playerid][alarmaktivan]) return ShowPlayerDialog(playerid, 9940, DIALOG_STYLE_INPUT, "Alarm", "Unesite vrijeme i obavjest\nVrijeme u formatu 18 45\nPrimjer: 18 45 Uplati lotto", "Unesi", "Odustani");
- }
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- if(response)
- {
- if(dialogid == 9940) // da ne bi dolazilo do mjesanja dialoga iz moda i dialoga iz inc
- {
- new sat, minuta, obavjest[20], tajm[6], string[80];
- if(sscanf(inputtext, "dds[20]", sat,minuta,obavjest)) return ShowPlayerDialog(playerid, 9940, DIALOG_STYLE_INPUT, "Alarm", "Unesite vrijeme i obavjest\nVrijeme u formatu 18 \nPrimjer: 18 45 Uplati lotto", "Unesi", "Odustani");
- if(sat < 0 || sat > 23) return ShowPlayerDialog(playerid, 9940, DIALOG_STYLE_INPUT, "Alarm", "Pogresan unos vremenskog formata\nVrijeme u formatu 18 45\nPrimjer: 18 45 Uplati lotto", "Unesi", "Odustani");
- if(0 > minuta > 60) return ShowPlayerDialog(playerid, 9940, DIALOG_STYLE_INPUT, "Alarm", "Pogresan unos vremenskog formata\nVrijeme u formatu 18 45\nPrimjer: 18 45 Uplati lotto", "Unesi", "Odustani");
- alarminfo[playerid][alarmaktivan] = true;
- format(tajm,sizeof(tajm),"%d:%d",sat,minuta);
- strmid(alarminfo[playerid][vrijeme],tajm,0,strlen(tajm),6);
- strmid(alarminfo[playerid][alarmobavjest],obavjest,0,strlen(obavjest),20);
- format(string,sizeof(string),"Uspjesno si podesio alarm. Vrijeme: %s. Obavjest: %s",tajm,obavjest);
- SendClientMessage(playerid,-1,string);
- return 1;
- }
- }
- return 1;
- }
- forward find0();
- public find0()
- {
- new hour,minute,second;
- gettime(hour,minute,second);
- if(second == 00)
- {
- KillTimer(nuliranje);
- SetTimer("alarmprovjera",60000,true);
- }
- return 1;
- }
- forward alarmprovjera();
- public alarmprovjera()
- {
- new hour,minute,second,string[6];
- gettime(hour,minute,second);
- format(string,sizeof(string),"%d:%d",hour,minute);
- for(new i; i < MAX_PLAYERS; i++)
- {
- if(alarminfo[i][alarmaktivan])
- {
- if(!strcmp(string, alarminfo[i][vrijeme]))
- {
- for(new tid; tid < 4; tid++)
- {
- TextDrawShowForPlayer(i,alarmtd[tid]);
- }
- PlayerTextDrawSetString(i,alarmobavjesttd[i],alarminfo[i][alarmobavjest]);
- PlayerTextDrawShow(i,alarmobavjesttd[i]);
- SetPVarInt(i,"AlarmZvoni",1);
- SendClientMessage(i,-1,"Da ugasite alarm pritisnite 'Y'");
- ResetAlarmVar(i);
- }
- }
- }
- return 1;
- }
- ResetAlarmVar(i)
- {
- strmid(alarminfo[i][vrijeme],"00:00",0,strlen("00:00"),6);
- strmid(alarminfo[i][alarmobavjest],"nema obavjesti",0,strlen("nema obavjesti"),20);
- alarminfo[i][alarmaktivan] = false;
- return 1;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement