20.07.2014, 16:38
(
Последний раз редактировалось HeLiOn_PrImE; 20.07.2014 в 18:00.
)
Quote:
Good luck with that.. I suggest using that menu system instead of making things complicated for your self. If you do use the menu code there must a way to use the "mouse control option".
|
My attention is now towards BroZeus's code. I've tried to add it on my FS and filled in the gaps, but for some reason I get errors.
Here's what I've got (I have bolded the lines with problems):
Код:
// This is a comment // uncomment the line below if you want to write a filterscript #define FILTERSCRIPT #include <a_samp> new PlayerText:Textdraw0[MAX_PLAYERS]; new PlayerText:Textdraw1[MAX_PLAYERS]; new PlayerText:Textdraw2[MAX_PLAYERS]; new bool:IsViewingMenu[MAX_PLAYERS];//on top new current[MAX_PLAYERS] = -1;//specifies the current text draw on which player pointer is Textdraw0[playerid] = CreatePlayerTextDraw(playerid, 35.666641, 137.303726, "New Textdraw"); PlayerTextDrawLetterSize(playerid, Textdraw0[playerid], 0.449999, 1.600000); PlayerTextDrawAlignment(playerid, Textdraw0[playerid], 1); PlayerTextDrawColor(playerid, Textdraw0[playerid], -1); PlayerTextDrawSetShadow(playerid, Textdraw0[playerid], 0); PlayerTextDrawSetOutline(playerid, Textdraw0[playerid], 1); PlayerTextDrawBackgroundColor(playerid, Textdraw0[playerid], 51); PlayerTextDrawFont(playerid, Textdraw0[playerid], 1); PlayerTextDrawSetProportional(playerid, Textdraw0[playerid], 1); PlayerTextDrawSetSelectable(playerid, Textdraw0[playerid], true); Textdraw1[playerid] = CreatePlayerTextDraw(playerid, 35.666645, 150.333389, "New Textdraw"); PlayerTextDrawLetterSize(playerid, Textdraw1[playerid], 0.449999, 1.600000); PlayerTextDrawAlignment(playerid, Textdraw1[playerid], 1); PlayerTextDrawColor(playerid, Textdraw1[playerid], -1); PlayerTextDrawSetShadow(playerid, Textdraw1[playerid], 0); PlayerTextDrawSetOutline(playerid, Textdraw1[playerid], 1); PlayerTextDrawBackgroundColor(playerid, Textdraw1[playerid], 51); PlayerTextDrawFont(playerid, Textdraw1[playerid], 1); PlayerTextDrawSetProportional(playerid, Textdraw1[playerid], 1); PlayerTextDrawSetSelectable(playerid, Textdraw1[playerid], true); Textdraw2[playerid] = CreatePlayerTextDraw(playerid, 35.666645, 162.533340, "New Textdraw"); PlayerTextDrawLetterSize(playerid, Textdraw2[playerid], 0.449999, 1.600000); PlayerTextDrawAlignment(playerid, Textdraw2[playerid], 1); PlayerTextDrawColor(playerid, Textdraw2[playerid], -1); PlayerTextDrawSetShadow(playerid, Textdraw2[playerid], 0); PlayerTextDrawSetOutline(playerid, Textdraw2[playerid], 1); PlayerTextDrawBackgroundColor(playerid, Textdraw2[playerid], 51); PlayerTextDrawFont(playerid, Textdraw2[playerid], 1); PlayerTextDrawSetProportional(playerid, Textdraw2[playerid], 1); PlayerTextDrawSetSelectable(playerid, Textdraw2[playerid], true); #if defined FILTERSCRIPT #else main() { print("\n----------------------------------"); print(" -----------------------------------"); print("----------------------------------\n"); } #endif public OnPlayerUpdate(playerid) { if(IsViewingMenu[playerid]) { new Keys,ud,lr; GetPlayerKeys(playerid,Keys,ud,lr);//for getting player keys up and down you can read about this in wiki if(ud == KEY_DOWN && current[playerid] != 4)//to do nothing when the pointer is at last text draw,i.e., 4 { current[playerid]++; switch(current[playerid]) { case 0 : PlayerTextDrawColor(playerid, Textdraw0[playerid], 0xFF0000FF); //setting current text draw color to red case 1 : { PlayerTextDrawColor(playerid, Textdraw0[playerid], -1);//setting old text draw color to back to white PlayerTextDrawColor(playerid, Textdraw1[playerid], 0xFF0000FF); } case 2 : { PlayerTextDrawColor(playerid, Textdraw1[playerid], -1);//setting old text draw color to back to white PlayerTextDrawColor(playerid, Textdraw2[playerid], 0xFF0000FF); } case 3 : { PlayerTextDrawColor(playerid, Textdraw2[playerid], -1);//setting old text draw color to back to white } }//end of switch else if(ud == KEY_UP && (current[playerid] != -1 || current[playerid] != 0))//to do nothing when pointer is nowhere or at first textdraw ,i.e, 0 { current[playerid]--; switch(current[playerid]) { case 0 : { PlayerTextDrawColor(playerid, Textdraw0[playerid], 0xFF0000FF);//setting current pointer color to red PlayerTextDrawColor(playerid, Textdraw1[playerid], -1);//setting textdraw color where pointer "was" back to white } case 1 : { PlayerTextDrawColor(playerid, Textdraw1[playerid], 0xFF0000FF);//setting current pointer color to red PlayerTextDrawColor(playerid, Textdraw2[playerid], -1);//setting textdraw color where pointer "was" back to white } case 3 : { PlayerTextDrawColor(playerid, Textdraw2[playerid], 0xFF0000FF);//setting current pointer color to red PlayerTextDrawColor(playerid, Textdraw3[playerid], -1);//setting textdraw color where pointer "was" back to white } case 4 : { PlayerTextDrawColor(playerid, Textdraw3[playerid], 0xFF0000FF);//setting current pointer color to red } }//end of switch } } return 1; } public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) { if(IsViewingMenu[playerid]) { if ((newkeys & KEY_FIRE) && !(oldkeys & KEY_FIRE) && current[playerid] != -1)//change to key whatever u want { switch(current[playerid]) { case 0://player is on menu item 1 do something case 1://player is on menu item 2 } } } return 1; } /*this all when u hide menu or player disconnects current[playerid] = -1; IsViewingMenu[playerid] = false;/*
Код:
TD_test.pwn(13) : error 010: invalid function or declaration TD_test.pwn(24) : error 010: invalid function or declaration TD_test.pwn(35) : error 010: invalid function or declaration TD_test.pwn(85) : warning 217: loose indentation TD_test.pwn(85) : error 029: invalid expression, assumed zero TD_test.pwn(85) : warning 215: expression has no effect TD_test.pwn(85) : error 001: expected token: ";", but found "if" TD_test.pwn(103) : error 017: undefined symbol "Textdraw3" TD_test.pwn(103) : warning 215: expression has no effect TD_test.pwn(103) : error 001: expected token: ";", but found "]" TD_test.pwn(103) : error 029: invalid expression, assumed zero TD_test.pwn(103) : fatal error 107: too many error messages on one line Compilation aborted.[Finished in 0.2s with exit code 1]