GvaKO 0 Odesláno: 8. Březen, 2012 Share Odesláno: 8. Březen, 2012 Ahoj chcel som spravit pickup tak ze ked nan pridem a dam L.Alt otvori sa dialog so skinami , ale nwm preco , ale vzdi hockde na hociajakom mieste dam L.Alt otvori sa dialog vsade a chcel som aby sa otvaral len ked som v pickupe ... #include #pragma tabsize 0 //////////////////////////////////////////////////////DEFINES//////////////////////////////////////////////////////////////////// #define COLOR_LIGHTBLUE 0x33CCFFAA #define Color_Red 0xFF0000 //new skin1; #define DIALOG_SKIN 335 #define IsPlayerInSphere new bool:funguje[MAX_PLAYERS]; public OnPlayerConnect(playerid) { funguje[playerid] = false; return 1; } public OnGameModeInit() { CreatePickup(1318, 16, 155.5995,-92.4377,1001.8047); return 1; } public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) { if(newkeys == KEY_WALK) { if(IsPlayerInSphere(playerid,155.5995,-92.4377,1001.8047,2)) { ShowPlayerDialog(playerid, 335, DIALOG_STYLE_INPUT, "Zadaj ID SKINU","Cena SKINU 20$","Ok",""); } }/ return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if(dialogid == 335) { if(!response) return SendClientMessage(playerid,0xFF0000,""); if(response) { if(IsNumeric(inputtext)) { if(IsValidSkin(strval(inputtext))) { SetPlayerSkin(playerid, strval(inputtext)); } else { SendClientMessage(playerid,Color_Red,"použi ID SKINU v rozmedzí od 0 ---> 299 !"); } } else { SendClientMessage(playerid,0xFF0000,"Použi čísla nie písmena !"); ShowPlayerDialog(playerid, 335, DIALOG_STYLE_INPUT, "Zadaj ID SKINU","Cena SKINU 20$.","Ok",""); } } } return 0; } stock IsNumeric(string[]) { for (new i = 0, j = strlen(string); i < j; i++) { if (string[i] > '9' || string[i] < '0') return 0; } return 1; } stock IsValidSkin(SkinID) { if((SkinID == 0)||(SkinID == 7)||(SkinID >= 9 && SkinID <= 41)||(SkinID >= 43 && SkinID <= 64)||(SkinID >= 66 && SkinID <= 73)||(SkinID >= 75 && SkinID <= 85)||(SkinID >= 87 && SkinID <= 118)||(SkinID >= 120 && SkinID <= 148)||(SkinID >= 150 && SkinID <= 207)||(SkinID >= 209 && SkinID <= 264)||(SkinID >= 274 && SkinID <= 288)||(SkinID >= 290 && SkinID <= 299)) return true; else return false; } Link to comment Share on other sites More sharing options...
0 VoDnIk168 0 Odesláno: 8. Březen, 2012 Share Odesláno: 8. Březen, 2012 Ahoj chcel som spravit pickup tak ze ked nan pridem a dam L.Alt otvori sa dialog so skinami , ale nwm preco , ale vzdi hockde na hociajakom mieste dam L.Alt otvori sa dialog vsade a chcel som aby sa otvaral len ked som v pickupe ... #include #pragma tabsize 0 //////////////////////////////////////////////////////DEFINES//////////////////////////////////////////////////////////////////// #define COLOR_LIGHTBLUE 0x33CCFFAA #define Color_Red 0xFF0000 //new skin1; #define DIALOG_SKIN 335 #define IsPlayerInSphere new bool:funguje[MAX_PLAYERS]; public OnPlayerConnect(playerid) { funguje[playerid] = false; return 1; } public OnGameModeInit() { CreatePickup(1318, 16, 155.5995,-92.4377,1001.8047); return 1; } public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) { if(newkeys == KEY_WALK) { if(IsPlayerInSphere(playerid,155.5995,-92.4377,1001.8047,2)) { ShowPlayerDialog(playerid, 335, DIALOG_STYLE_INPUT, "Zadaj ID SKINU","Cena SKINU 20$","Ok",""); } }/ return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if(dialogid == 335) { if(!response) return SendClientMessage(playerid,0xFF0000,""); if(response) { if(IsNumeric(inputtext)) { if(IsValidSkin(strval(inputtext))) { SetPlayerSkin(playerid, strval(inputtext)); } else { SendClientMessage(playerid,Color_Red,"použi ID SKINU v rozmedzí od 0 ---> 299 !"); } } else { SendClientMessage(playerid,0xFF0000,"Použi čísla nie písmena !"); ShowPlayerDialog(playerid, 335, DIALOG_STYLE_INPUT, "Zadaj ID SKINU","Cena SKINU 20$.","Ok",""); } } } return 0; } stock IsNumeric(string[]) { for (new i = 0, j = strlen(string); i < j; i++) { if (string[i] > '9' || string[i] < '0') return 0; } return 1; } stock IsValidSkin(SkinID) { if((SkinID == 0)||(SkinID == 7)||(SkinID >= 9 && SkinID <= 41)||(SkinID >= 43 && SkinID <= 64)||(SkinID >= 66 && SkinID <= 73)||(SkinID >= 75 && SkinID <= 85)||(SkinID >= 87 && SkinID <= 118)||(SkinID >= 120 && SkinID <= 148)||(SkinID >= 150 && SkinID <= 207)||(SkinID >= 209 && SkinID <= 264)||(SkinID >= 274 && SkinID <= 288)||(SkinID >= 290 && SkinID <= 299)) return true; else return false; } zkusil bych to přes RangeOfPoint #include #pragma tabsize 0 //////////////////////////////////////////////////////DEFINES//////////////////////////////////////////////////////////////////// #define COLOR_LIGHTBLUE 0x33CCFFAA #define Color_Red 0xFF0000 //new skin1; #define DIALOG_SKIN 335 #define IsPlayerInSphere new bool:funguje[MAX_PLAYERS]; public OnPlayerConnect(playerid) { funguje[playerid] = false; return 1; } public OnGameModeInit() { CreatePickup(1318, 16, 155.5995,-92.4377,1001.8047); return 1; } public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) { if(newkeys == KEY_WALK) { if(IsPlayerInRangeOfPoint(playerid,2,155.5995,-92.4377,1001.8047)) { ShowPlayerDialog(playerid, 335, DIALOG_STYLE_INPUT, "Zadaj ID SKINU","Cena SKINU 20$","Ok",""); } }/ return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if(dialogid == 335) { if(!response) return SendClientMessage(playerid,0xFF0000,""); if(response) { if(IsNumeric(inputtext)) { if(IsValidSkin(strval(inputtext))) { SetPlayerSkin(playerid, strval(inputtext)); } else { SendClientMessage(playerid,Color_Red,"použi ID SKINU v rozmedzí od 0 ---> 299 !"); } } else { SendClientMessage(playerid,0xFF0000,"Použi čísla nie písmena !"); ShowPlayerDialog(playerid, 335, DIALOG_STYLE_INPUT, "Zadaj ID SKINU","Cena SKINU 20$.","Ok",""); } } } return 0; } stock IsNumeric(string[]) { for (new i = 0, j = strlen(string); i < j; i++) { if (string[i] > '9' || string[i] < '0') return 0; } return 1; } stock IsValidSkin(SkinID) { if((SkinID == 0)||(SkinID == 7)||(SkinID >= 9 && SkinID <= 41)||(SkinID >= 43 && SkinID <= 64)||(SkinID >= 66 && SkinID <= 73)||(SkinID >= 75 && SkinID <= 85)||(SkinID >= 87 && SkinID <= 118)||(SkinID >= 120 && SkinID <= 148)||(SkinID >= 150 && SkinID <= 207)||(SkinID >= 209 && SkinID <= 264)||(SkinID >= 274 && SkinID <= 288)||(SkinID >= 290 && SkinID <= 299)) return true; else return false; } Link to comment Share on other sites More sharing options...
0 Skemr 0 Odesláno: 8. Březen, 2012 Share Odesláno: 8. Březen, 2012 Má definované IsPlayerInSphere, ale nic z toho. Musíš mít tu definici kompletní Máš tam: #define IsPlayerInSphere ale musíš tam mít #define IsPlayerInSphere(%0,%1,%2,%3,%4) IsPlayerInRangeOfPoint(%0,%4,%1,%2,%3) Link to comment Share on other sites More sharing options...
Dotaz
GvaKO 0
Ahoj chcel som spravit pickup tak ze ked nan pridem a dam L.Alt otvori sa dialog so skinami , ale nwm preco , ale vzdi hockde na hociajakom mieste dam L.Alt otvori sa dialog vsade a chcel som aby sa otvaral len ked som v pickupe ...
Link to comment
Share on other sites
2 odpovědí na tuto otázku
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now