Programación en Pawn - SAMP

[Include] MenuStore (Tiendas dinámicas con TextDraws)

¿Encontraste un Plugin que te asombró? ¿Qué opinas de mostrárnoslo? ¡Súbelo y compártelo con los demás! También, encuentra gran cantidad de Includes.
Reglas del Foro

  • Si publicas un Plugin de tu autoría, deberás publicar el código fuente del mismo. No olvides utilizar el BBCode [Pawn]Código aquí[/Pawn].
  • Si no eres el autor del plugin/include o has utilizado códigos de otros autores, recuerda colocar los créditos correspondientes. (El plagio es motivo de sanción).

Moderador: Ayudantes

Buenas tardes amores, es mi primer aporte.
Hace 1 semana, navegando por otro foro, encontré un INCLUDE bastante curioso que me hizo recordar mucho a un servidor actual muy famoso con sistemas novedosos. Hoy les traigo MenuStore, este INCLUDE te permite crear varios tipos de tiendas utilizando Textdraws clickeables, es muy fácil de usar, es cuestión de agarrarle la mano, yo lo recomendaría para servidores Roleplay. Obviamente el INCLUDE NO ES MIO, así que abajo de todo pondré los créditos y link del post original.


  • Demostración:
Imagen


  • Funciones:
 Codigo Pawno:
1

stock MenuStore_AddItem(playerid, itemid, modelid, name[], price, description[] = EOS, Float:description_size = 0.0, bool:description_line_jump = true, stack = 1, Float:rotX = 0.0, Float:rotY = 0.0, Float:rotZ = 0.0, Float:zoom = 1.0)
  Cantidad de llaves: Abiertas(0)-Cerradas(0) | Lineas Totales: 1
  • "itemid" - El ID del artículo servirá como "clave", cada artículo debe tener un ID único.
  • "modelid" - Modelo del artículo que se mostrará en la vista previa.
  • "name" - Nombre del artículo.
  • "price" - Precio del artículo.
  • ""description" - Descripción del artículo.
  • "Float:description_size" - Aumentar el cuadro de descripción, el valor predeterminado es 0.0.
  • "bool:description_line_jump" - Salto de línea automático o no
  • "stack" - Valor en 1, el artículo se puede stockear en el carro.
  • "rotX", "rotY", "rotZ" - Vista previa de rotación.
  • "Float:zoom " - Vista previa de zoom.

 Codigo Pawno:
1

stock MenuStore_Open(playerid, menuid[], store_name[], money_sign[] = MS_DEFAULT_MONEY_SIGN, button_confirm[] = MS_DEFAULT_CONFIRM)
  Cantidad de llaves: Abiertas(0)-Cerradas(0) | Lineas Totales: 1
  • "menuid" - Funciona igual que easyDialog, puede usar cualquier nombre sin tener que definirlo.
  • "store_name" - Nombre de la tienda.
  • "money_sign" - Signo de dinero, el valor predeterminado es "$"
  • "button_confirm" - Nombre del botón de confirmación, el valor predeterminado es "Buy". (Pueden cambiarlo abriendo el include y las primeras lineas).

  • Código de Ejemplo:
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88

CMD:store(playerid, params[])
{ 
    MenuStore_AddItem(playerid, 1, 342, "Granade", 500, "Throw to explode.", 200); 
    MenuStore_AddItem(playerid, 2, 344, "Molotov", 500, "Throw to set fire to something.", 200); 
    MenuStore_AddItem(playerid, 3, 346, "9mm Pistol", 500, "Pistol with low firepower."); 
    MenuStore_AddItem(playerid, 4, 347, "Silenced 9mm", 500, "Pistol with low firepower."); 
    MenuStore_AddItem(playerid, 5, 348, "Desert Eagle", 500, "Pistol with high firepower."); 
    MenuStore_AddItem(playerid, 6, 349, "Shotgun", 500, "Normal Shotgun."); 
    MenuStore_AddItem(playerid, 7, 350, "Sawnoff Shotgun", 500, "Powerfull Shotgun."); 
    MenuStore_AddItem(playerid, 8, 351, "Combat Shotgun", 500, "Powerfull Shotgun."); 
    MenuStore_AddItem(playerid, 9, 352, "Micro SMG", 500, "Two-handed machine gun."); 
    MenuStore_AddItem(playerid, 10, 353, "MP5", 500, "Machine gun."); 
    MenuStore_AddItem(playerid, 11, 355, "AK-47", 500, "Powerfull Rifle."); 
    MenuStore_AddItem(playerid, 12, 356, "M4", 500, "Powerfull Rifle."); 
    MenuStore_AddItem(playerid, 13, 372, "Tec-9", 500, "Powerfull machine gun."); 
    MenuStore_AddItem(playerid, 14, 357, "Country Rifle", 500, "Normal Rifle."); 
    MenuStore_AddItem(playerid, 15, 358, "Sniper Rifle", 500, "Powerfull Rifle."); 
    MenuStore_Show(playerid, Weapon_Shop, "Shop Weapons"); 
    return 1; 
} 

Store:Weapon_Shop(playerid, response, itemid, modelid, price, amount, itemname[]) 
{ 
    if(!response) 
        return true; 

    if(GetPlayerMoney(playerid) < price) 
        return SendClientMessage(playerid, -1, "You don't have enough money."); 

    if(amount == 1) { 
        GivePlayerWeapon(playerid, GetWeaponIDFromModel(modelid), 200); 
    } 
    else { 
        GivePlayerWeapon(playerid, GetWeaponIDFromModel(modelid), amount); 
    } 
     
    new string[128]; 
    format(string, 128, "You bought %dx %s", amount, itemname); 
    SendClientMessage(playerid, -1, string); 
     
    GivePlayerMoney(playerid, -price); 
    return true; 
} 

stock GetWeaponIDFromModel(modelid) 
{ 
    new idweapon; 
    switch(modelid) 
    { 
        case 331: idweapon = 1; // Brass Knuckles 
        case 333: idweapon = 2; // Golf Club 
        case 334: idweapon = 3; // Nightstick 
        case 335: idweapon = 4; // Knife 
        case 336: idweapon = 5; // Baseball Bat 
        case 337: idweapon = 6; // Shovel 
        case 338: idweapon = 7; // Pool Cue 
        case 339: idweapon = 8; // Katana 
        case 341: idweapon = 9; // Chainsaw 
        case 321: idweapon = 10; // Double-ended Dildo 
        case 325: idweapon = 14; // Flowers 
        case 326: idweapon = 15; // Cane 
        case 342: idweapon = 16; // Grenade 
        case 343: idweapon = 17; // Tear Gas 
        case 344: idweapon = 18; // Molotov Cocktail 
        case 346: idweapon = 22; // 9mm 
        case 347: idweapon = 23; // Silenced 9mm 
        case 348: idweapon = 24; // Desert Eagle 
        case 349: idweapon = 25; // Shotgun 
        case 350: idweapon = 26; // Sawnoff 
        case 351: idweapon = 27; // Combat Shotgun 
        case 352: idweapon = 28; // Micro SMG/Uzi 
        case 353: idweapon = 29; // MP5 
        case 355: idweapon = 30; // AK-47 
        case 356: idweapon = 31; // M4 
        case 372: idweapon = 32; // Tec-9 
        case 357: idweapon = 33; // Country Rifle 
        case 358: idweapon = 34; // Sniper Rifle 
        case 359: idweapon = 35; // RPG 
        case 360: idweapon = 36; // HS Rocket 
        case 361: idweapon = 37; // Flamethrower 
        case 362: idweapon = 38; // Minigun 
        case 363: idweapon = 39;// Satchel Charge + Detonator 
        case 365: idweapon = 41; // Spraycan 
        case 366: idweapon = 42; // Fire Extinguisher 
        case 367: idweapon = 43; // Camera 
    } 
    return idweapon; 
} 
  Cantidad de llaves: Abiertas(6)-Cerradas(6) | Lineas Totales: 88

  • Aclaración:
  • El idioma del include, tanto como el botón de compra "BUY", el titulo de "CART" y otras cosas, SON EDITABLES desde el mismo include.

  • Descarga:

  • Creditos:
  • CaioTJF: Creador del Include
  • DarkFireYT: Aportar link de Mediafre en comentarios
Spoiler:
Patric.exe escribió:
28 Nov 2018 10:15
Buenas tardes amores, es mi primer aporte.
Hace 1 semana, navegando por otro foro, encontré un INCLUDE bastante curioso que me hizo recordar mucho a un servidor actual muy famoso con sistemas novedosos. Hoy les traigo MenuStore, este INCLUDE te permite crear varios tipos de tiendas utilizando Textdraws clickeables, es muy fácil de usar, es cuestión de agarrarle la mano, yo lo recomendaría para servidores Roleplay. Obviamente el INCLUDE NO ES MIO, así que abajo de todo pondré los créditos y link del post original.


  • Demostración:
Imagen


  • Funciones:
 Codigo Pawno:
1

stock MenuStore_AddItem(playerid, itemid, modelid, name[], price, description[] = EOS, Float:description_size = 0.0, bool:description_line_jump = true, stack = 1, Float:rotX = 0.0, Float:rotY = 0.0, Float:rotZ = 0.0, Float:zoom = 1.0)
  Cantidad de llaves: Abiertas(0)-Cerradas(0) | Lineas Totales: 1
  • "itemid" - El ID del artículo servirá como "clave", cada artículo debe tener un ID único.
  • "modelid" - Modelo del artículo que se mostrará en la vista previa.
  • "name" - Nombre del artículo.
  • "price" - Precio del artículo.
  • ""description" - Descripción del artículo.
  • "Float:description_size" - Aumentar el cuadro de descripción, el valor predeterminado es 0.0.
  • "bool:description_line_jump" - Salto de línea automático o no
  • "stack" - Valor en 1, el artículo se puede stockear en el carro.
  • "rotX", "rotY", "rotZ" - Vista previa de rotación.
  • "Float:zoom " - Vista previa de zoom.

 Codigo Pawno:
1

stock MenuStore_Open(playerid, menuid[], store_name[], money_sign[] = MS_DEFAULT_MONEY_SIGN, button_confirm[] = MS_DEFAULT_CONFIRM)
  Cantidad de llaves: Abiertas(0)-Cerradas(0) | Lineas Totales: 1
  • "menuid" - Funciona igual que easyDialog, puede usar cualquier nombre sin tener que definirlo.
  • "store_name" - Nombre de la tienda.
  • "money_sign" - Signo de dinero, el valor predeterminado es "$"
  • "button_confirm" - Nombre del botón de confirmación, el valor predeterminado es "Buy". (Pueden cambiarlo abriendo el include y las primeras lineas).

  • Código de Ejemplo:
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88

CMD:store(playerid, params[])
{ 
    MenuStore_AddItem(playerid, 1, 342, "Granade", 500, "Throw to explode.", 200); 
    MenuStore_AddItem(playerid, 2, 344, "Molotov", 500, "Throw to set fire to something.", 200); 
    MenuStore_AddItem(playerid, 3, 346, "9mm Pistol", 500, "Pistol with low firepower."); 
    MenuStore_AddItem(playerid, 4, 347, "Silenced 9mm", 500, "Pistol with low firepower."); 
    MenuStore_AddItem(playerid, 5, 348, "Desert Eagle", 500, "Pistol with high firepower."); 
    MenuStore_AddItem(playerid, 6, 349, "Shotgun", 500, "Normal Shotgun."); 
    MenuStore_AddItem(playerid, 7, 350, "Sawnoff Shotgun", 500, "Powerfull Shotgun."); 
    MenuStore_AddItem(playerid, 8, 351, "Combat Shotgun", 500, "Powerfull Shotgun."); 
    MenuStore_AddItem(playerid, 9, 352, "Micro SMG", 500, "Two-handed machine gun."); 
    MenuStore_AddItem(playerid, 10, 353, "MP5", 500, "Machine gun."); 
    MenuStore_AddItem(playerid, 11, 355, "AK-47", 500, "Powerfull Rifle."); 
    MenuStore_AddItem(playerid, 12, 356, "M4", 500, "Powerfull Rifle."); 
    MenuStore_AddItem(playerid, 13, 372, "Tec-9", 500, "Powerfull machine gun."); 
    MenuStore_AddItem(playerid, 14, 357, "Country Rifle", 500, "Normal Rifle."); 
    MenuStore_AddItem(playerid, 15, 358, "Sniper Rifle", 500, "Powerfull Rifle."); 
    MenuStore_Show(playerid, Weapon_Shop, "Shop Weapons"); 
    return 1; 
} 

Store:Weapon_Shop(playerid, response, itemid, modelid, price, amount, itemname[]) 
{ 
    if(!response) 
        return true; 

    if(GetPlayerMoney(playerid) < price) 
        return SendClientMessage(playerid, -1, "You don't have enough money."); 

    if(amount == 1) { 
        GivePlayerWeapon(playerid, GetWeaponIDFromModel(modelid), 200); 
    } 
    else { 
        GivePlayerWeapon(playerid, GetWeaponIDFromModel(modelid), amount); 
    } 
     
    new string[128]; 
    format(string, 128, "You bought %dx %s", amount, itemname); 
    SendClientMessage(playerid, -1, string); 
     
    GivePlayerMoney(playerid, -price); 
    return true; 
} 

stock GetWeaponIDFromModel(modelid) 
{ 
    new idweapon; 
    switch(modelid) 
    { 
        case 331: idweapon = 1; // Brass Knuckles 
        case 333: idweapon = 2; // Golf Club 
        case 334: idweapon = 3; // Nightstick 
        case 335: idweapon = 4; // Knife 
        case 336: idweapon = 5; // Baseball Bat 
        case 337: idweapon = 6; // Shovel 
        case 338: idweapon = 7; // Pool Cue 
        case 339: idweapon = 8; // Katana 
        case 341: idweapon = 9; // Chainsaw 
        case 321: idweapon = 10; // Double-ended Dildo 
        case 325: idweapon = 14; // Flowers 
        case 326: idweapon = 15; // Cane 
        case 342: idweapon = 16; // Grenade 
        case 343: idweapon = 17; // Tear Gas 
        case 344: idweapon = 18; // Molotov Cocktail 
        case 346: idweapon = 22; // 9mm 
        case 347: idweapon = 23; // Silenced 9mm 
        case 348: idweapon = 24; // Desert Eagle 
        case 349: idweapon = 25; // Shotgun 
        case 350: idweapon = 26; // Sawnoff 
        case 351: idweapon = 27; // Combat Shotgun 
        case 352: idweapon = 28; // Micro SMG/Uzi 
        case 353: idweapon = 29; // MP5 
        case 355: idweapon = 30; // AK-47 
        case 356: idweapon = 31; // M4 
        case 372: idweapon = 32; // Tec-9 
        case 357: idweapon = 33; // Country Rifle 
        case 358: idweapon = 34; // Sniper Rifle 
        case 359: idweapon = 35; // RPG 
        case 360: idweapon = 36; // HS Rocket 
        case 361: idweapon = 37; // Flamethrower 
        case 362: idweapon = 38; // Minigun 
        case 363: idweapon = 39;// Satchel Charge + Detonator 
        case 365: idweapon = 41; // Spraycan 
        case 366: idweapon = 42; // Fire Extinguisher 
        case 367: idweapon = 43; // Camera 
    } 
    return idweapon; 
} 
  Cantidad de llaves: Abiertas(6)-Cerradas(6) | Lineas Totales: 88

  • Aclaración:
  • El idioma del include, tanto como el botón de compra "BUY", el titulo de "CART" y otras cosas, SON EDITABLES desde el mismo include.

  • Descarga:

  • Creditos:
  • CaioTJF: Creador del Include
Gracias por comentar los creditos :P
DarkFireYT escribió:
28 Nov 2018 18:42
Spoiler:
Patric.exe escribió:
28 Nov 2018 10:15
Buenas tardes amores, es mi primer aporte.
Hace 1 semana, navegando por otro foro, encontré un INCLUDE bastante curioso que me hizo recordar mucho a un servidor actual muy famoso con sistemas novedosos. Hoy les traigo MenuStore, este INCLUDE te permite crear varios tipos de tiendas utilizando Textdraws clickeables, es muy fácil de usar, es cuestión de agarrarle la mano, yo lo recomendaría para servidores Roleplay. Obviamente el INCLUDE NO ES MIO, así que abajo de todo pondré los créditos y link del post original.


  • Demostración:
Imagen


  • Funciones:
 Codigo Pawno:
1

stock MenuStore_AddItem(playerid, itemid, modelid, name[], price, description[] = EOS, Float:description_size = 0.0, bool:description_line_jump = true, stack = 1, Float:rotX = 0.0, Float:rotY = 0.0, Float:rotZ = 0.0, Float:zoom = 1.0)
  Cantidad de llaves: Abiertas(0)-Cerradas(0) | Lineas Totales: 1
  • "itemid" - El ID del artículo servirá como "clave", cada artículo debe tener un ID único.
  • "modelid" - Modelo del artículo que se mostrará en la vista previa.
  • "name" - Nombre del artículo.
  • "price" - Precio del artículo.
  • ""description" - Descripción del artículo.
  • "Float:description_size" - Aumentar el cuadro de descripción, el valor predeterminado es 0.0.
  • "bool:description_line_jump" - Salto de línea automático o no
  • "stack" - Valor en 1, el artículo se puede stockear en el carro.
  • "rotX", "rotY", "rotZ" - Vista previa de rotación.
  • "Float:zoom " - Vista previa de zoom.

 Codigo Pawno:
1

stock MenuStore_Open(playerid, menuid[], store_name[], money_sign[] = MS_DEFAULT_MONEY_SIGN, button_confirm[] = MS_DEFAULT_CONFIRM)
  Cantidad de llaves: Abiertas(0)-Cerradas(0) | Lineas Totales: 1
  • "menuid" - Funciona igual que easyDialog, puede usar cualquier nombre sin tener que definirlo.
  • "store_name" - Nombre de la tienda.
  • "money_sign" - Signo de dinero, el valor predeterminado es "$"
  • "button_confirm" - Nombre del botón de confirmación, el valor predeterminado es "Buy". (Pueden cambiarlo abriendo el include y las primeras lineas).

  • Código de Ejemplo:
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88

CMD:store(playerid, params[])
{ 
    MenuStore_AddItem(playerid, 1, 342, "Granade", 500, "Throw to explode.", 200); 
    MenuStore_AddItem(playerid, 2, 344, "Molotov", 500, "Throw to set fire to something.", 200); 
    MenuStore_AddItem(playerid, 3, 346, "9mm Pistol", 500, "Pistol with low firepower."); 
    MenuStore_AddItem(playerid, 4, 347, "Silenced 9mm", 500, "Pistol with low firepower."); 
    MenuStore_AddItem(playerid, 5, 348, "Desert Eagle", 500, "Pistol with high firepower."); 
    MenuStore_AddItem(playerid, 6, 349, "Shotgun", 500, "Normal Shotgun."); 
    MenuStore_AddItem(playerid, 7, 350, "Sawnoff Shotgun", 500, "Powerfull Shotgun."); 
    MenuStore_AddItem(playerid, 8, 351, "Combat Shotgun", 500, "Powerfull Shotgun."); 
    MenuStore_AddItem(playerid, 9, 352, "Micro SMG", 500, "Two-handed machine gun."); 
    MenuStore_AddItem(playerid, 10, 353, "MP5", 500, "Machine gun."); 
    MenuStore_AddItem(playerid, 11, 355, "AK-47", 500, "Powerfull Rifle."); 
    MenuStore_AddItem(playerid, 12, 356, "M4", 500, "Powerfull Rifle."); 
    MenuStore_AddItem(playerid, 13, 372, "Tec-9", 500, "Powerfull machine gun."); 
    MenuStore_AddItem(playerid, 14, 357, "Country Rifle", 500, "Normal Rifle."); 
    MenuStore_AddItem(playerid, 15, 358, "Sniper Rifle", 500, "Powerfull Rifle."); 
    MenuStore_Show(playerid, Weapon_Shop, "Shop Weapons"); 
    return 1; 
} 

Store:Weapon_Shop(playerid, response, itemid, modelid, price, amount, itemname[]) 
{ 
    if(!response) 
        return true; 

    if(GetPlayerMoney(playerid) < price) 
        return SendClientMessage(playerid, -1, "You don't have enough money."); 

    if(amount == 1) { 
        GivePlayerWeapon(playerid, GetWeaponIDFromModel(modelid), 200); 
    } 
    else { 
        GivePlayerWeapon(playerid, GetWeaponIDFromModel(modelid), amount); 
    } 
     
    new string[128]; 
    format(string, 128, "You bought %dx %s", amount, itemname); 
    SendClientMessage(playerid, -1, string); 
     
    GivePlayerMoney(playerid, -price); 
    return true; 
} 

stock GetWeaponIDFromModel(modelid) 
{ 
    new idweapon; 
    switch(modelid) 
    { 
        case 331: idweapon = 1; // Brass Knuckles 
        case 333: idweapon = 2; // Golf Club 
        case 334: idweapon = 3; // Nightstick 
        case 335: idweapon = 4; // Knife 
        case 336: idweapon = 5; // Baseball Bat 
        case 337: idweapon = 6; // Shovel 
        case 338: idweapon = 7; // Pool Cue 
        case 339: idweapon = 8; // Katana 
        case 341: idweapon = 9; // Chainsaw 
        case 321: idweapon = 10; // Double-ended Dildo 
        case 325: idweapon = 14; // Flowers 
        case 326: idweapon = 15; // Cane 
        case 342: idweapon = 16; // Grenade 
        case 343: idweapon = 17; // Tear Gas 
        case 344: idweapon = 18; // Molotov Cocktail 
        case 346: idweapon = 22; // 9mm 
        case 347: idweapon = 23; // Silenced 9mm 
        case 348: idweapon = 24; // Desert Eagle 
        case 349: idweapon = 25; // Shotgun 
        case 350: idweapon = 26; // Sawnoff 
        case 351: idweapon = 27; // Combat Shotgun 
        case 352: idweapon = 28; // Micro SMG/Uzi 
        case 353: idweapon = 29; // MP5 
        case 355: idweapon = 30; // AK-47 
        case 356: idweapon = 31; // M4 
        case 372: idweapon = 32; // Tec-9 
        case 357: idweapon = 33; // Country Rifle 
        case 358: idweapon = 34; // Sniper Rifle 
        case 359: idweapon = 35; // RPG 
        case 360: idweapon = 36; // HS Rocket 
        case 361: idweapon = 37; // Flamethrower 
        case 362: idweapon = 38; // Minigun 
        case 363: idweapon = 39;// Satchel Charge + Detonator 
        case 365: idweapon = 41; // Spraycan 
        case 366: idweapon = 42; // Fire Extinguisher 
        case 367: idweapon = 43; // Camera 
    } 
    return idweapon; 
} 
  Cantidad de llaves: Abiertas(6)-Cerradas(6) | Lineas Totales: 88

  • Aclaración:
  • El idioma del include, tanto como el botón de compra "BUY", el titulo de "CART" y otras cosas, SON EDITABLES desde el mismo include.

  • Descarga:

  • Creditos:
  • CaioTJF: Creador del Include
Gracias por comentar los creditos :P
???
Patric.exe escribió:
28 Nov 2018 19:14
DarkFireYT escribió:
28 Nov 2018 18:42
Spoiler:
Patric.exe escribió:
28 Nov 2018 10:15
Buenas tardes amores, es mi primer aporte.
Hace 1 semana, navegando por otro foro, encontré un INCLUDE bastante curioso que me hizo recordar mucho a un servidor actual muy famoso con sistemas novedosos. Hoy les traigo MenuStore, este INCLUDE te permite crear varios tipos de tiendas utilizando Textdraws clickeables, es muy fácil de usar, es cuestión de agarrarle la mano, yo lo recomendaría para servidores Roleplay. Obviamente el INCLUDE NO ES MIO, así que abajo de todo pondré los créditos y link del post original.


  • Demostración:
Imagen


  • Funciones:
 Codigo Pawno:
1

stock MenuStore_AddItem(playerid, itemid, modelid, name[], price, description[] = EOS, Float:description_size = 0.0, bool:description_line_jump = true, stack = 1, Float:rotX = 0.0, Float:rotY = 0.0, Float:rotZ = 0.0, Float:zoom = 1.0)
  Cantidad de llaves: Abiertas(0)-Cerradas(0) | Lineas Totales: 1
  • "itemid" - El ID del artículo servirá como "clave", cada artículo debe tener un ID único.
  • "modelid" - Modelo del artículo que se mostrará en la vista previa.
  • "name" - Nombre del artículo.
  • "price" - Precio del artículo.
  • ""description" - Descripción del artículo.
  • "Float:description_size" - Aumentar el cuadro de descripción, el valor predeterminado es 0.0.
  • "bool:description_line_jump" - Salto de línea automático o no
  • "stack" - Valor en 1, el artículo se puede stockear en el carro.
  • "rotX", "rotY", "rotZ" - Vista previa de rotación.
  • "Float:zoom " - Vista previa de zoom.

 Codigo Pawno:
1

stock MenuStore_Open(playerid, menuid[], store_name[], money_sign[] = MS_DEFAULT_MONEY_SIGN, button_confirm[] = MS_DEFAULT_CONFIRM)
  Cantidad de llaves: Abiertas(0)-Cerradas(0) | Lineas Totales: 1
  • "menuid" - Funciona igual que easyDialog, puede usar cualquier nombre sin tener que definirlo.
  • "store_name" - Nombre de la tienda.
  • "money_sign" - Signo de dinero, el valor predeterminado es "$"
  • "button_confirm" - Nombre del botón de confirmación, el valor predeterminado es "Buy". (Pueden cambiarlo abriendo el include y las primeras lineas).

  • Código de Ejemplo:
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88

CMD:store(playerid, params[])
{ 
    MenuStore_AddItem(playerid, 1, 342, "Granade", 500, "Throw to explode.", 200); 
    MenuStore_AddItem(playerid, 2, 344, "Molotov", 500, "Throw to set fire to something.", 200); 
    MenuStore_AddItem(playerid, 3, 346, "9mm Pistol", 500, "Pistol with low firepower."); 
    MenuStore_AddItem(playerid, 4, 347, "Silenced 9mm", 500, "Pistol with low firepower."); 
    MenuStore_AddItem(playerid, 5, 348, "Desert Eagle", 500, "Pistol with high firepower."); 
    MenuStore_AddItem(playerid, 6, 349, "Shotgun", 500, "Normal Shotgun."); 
    MenuStore_AddItem(playerid, 7, 350, "Sawnoff Shotgun", 500, "Powerfull Shotgun."); 
    MenuStore_AddItem(playerid, 8, 351, "Combat Shotgun", 500, "Powerfull Shotgun."); 
    MenuStore_AddItem(playerid, 9, 352, "Micro SMG", 500, "Two-handed machine gun."); 
    MenuStore_AddItem(playerid, 10, 353, "MP5", 500, "Machine gun."); 
    MenuStore_AddItem(playerid, 11, 355, "AK-47", 500, "Powerfull Rifle."); 
    MenuStore_AddItem(playerid, 12, 356, "M4", 500, "Powerfull Rifle."); 
    MenuStore_AddItem(playerid, 13, 372, "Tec-9", 500, "Powerfull machine gun."); 
    MenuStore_AddItem(playerid, 14, 357, "Country Rifle", 500, "Normal Rifle."); 
    MenuStore_AddItem(playerid, 15, 358, "Sniper Rifle", 500, "Powerfull Rifle."); 
    MenuStore_Show(playerid, Weapon_Shop, "Shop Weapons"); 
    return 1; 
} 

Store:Weapon_Shop(playerid, response, itemid, modelid, price, amount, itemname[]) 
{ 
    if(!response) 
        return true; 

    if(GetPlayerMoney(playerid) < price) 
        return SendClientMessage(playerid, -1, "You don't have enough money."); 

    if(amount == 1) { 
        GivePlayerWeapon(playerid, GetWeaponIDFromModel(modelid), 200); 
    } 
    else { 
        GivePlayerWeapon(playerid, GetWeaponIDFromModel(modelid), amount); 
    } 
     
    new string[128]; 
    format(string, 128, "You bought %dx %s", amount, itemname); 
    SendClientMessage(playerid, -1, string); 
     
    GivePlayerMoney(playerid, -price); 
    return true; 
} 

stock GetWeaponIDFromModel(modelid) 
{ 
    new idweapon; 
    switch(modelid) 
    { 
        case 331: idweapon = 1; // Brass Knuckles 
        case 333: idweapon = 2; // Golf Club 
        case 334: idweapon = 3; // Nightstick 
        case 335: idweapon = 4; // Knife 
        case 336: idweapon = 5; // Baseball Bat 
        case 337: idweapon = 6; // Shovel 
        case 338: idweapon = 7; // Pool Cue 
        case 339: idweapon = 8; // Katana 
        case 341: idweapon = 9; // Chainsaw 
        case 321: idweapon = 10; // Double-ended Dildo 
        case 325: idweapon = 14; // Flowers 
        case 326: idweapon = 15; // Cane 
        case 342: idweapon = 16; // Grenade 
        case 343: idweapon = 17; // Tear Gas 
        case 344: idweapon = 18; // Molotov Cocktail 
        case 346: idweapon = 22; // 9mm 
        case 347: idweapon = 23; // Silenced 9mm 
        case 348: idweapon = 24; // Desert Eagle 
        case 349: idweapon = 25; // Shotgun 
        case 350: idweapon = 26; // Sawnoff 
        case 351: idweapon = 27; // Combat Shotgun 
        case 352: idweapon = 28; // Micro SMG/Uzi 
        case 353: idweapon = 29; // MP5 
        case 355: idweapon = 30; // AK-47 
        case 356: idweapon = 31; // M4 
        case 372: idweapon = 32; // Tec-9 
        case 357: idweapon = 33; // Country Rifle 
        case 358: idweapon = 34; // Sniper Rifle 
        case 359: idweapon = 35; // RPG 
        case 360: idweapon = 36; // HS Rocket 
        case 361: idweapon = 37; // Flamethrower 
        case 362: idweapon = 38; // Minigun 
        case 363: idweapon = 39;// Satchel Charge + Detonator 
        case 365: idweapon = 41; // Spraycan 
        case 366: idweapon = 42; // Fire Extinguisher 
        case 367: idweapon = 43; // Camera 
    } 
    return idweapon; 
} 
  Cantidad de llaves: Abiertas(6)-Cerradas(6) | Lineas Totales: 88

  • Aclaración:
  • El idioma del include, tanto como el botón de compra "BUY", el titulo de "CART" y otras cosas, SON EDITABLES desde el mismo include.

  • Descarga:

  • Creditos:
  • CaioTJF: Creador del Include
Gracias por comentar los creditos :P
???
Muchas veces no ponen los creditos correspondientes, de todas formas gracias por pasarme el include , ya lo probé
alto aporte, me gustó
No me deja descargarlo. -dots
JostinEduardo escribió:
29 Nov 2018 06:45
No me deja descargarlo. -dots
Te lo dejo:
Click para descargar
DarkFireYT escribió:
29 Nov 2018 06:54
JostinEduardo escribió:
29 Nov 2018 06:45
No me deja descargarlo. -dots
Te lo dejo:
Click para descargar
Gracias DarkFireYT, voy a poner tu link en el post.
Tiene algún comando para abrir el Menú?, y si es así cual es?
Orlando Rivas escribió:
05 Dic 2018 20:50
Tiene algún comando para abrir el Menú?, y si es así cual es?
Hola, es un include, vos tenes que crear el comando con dichas funciones.
Si queres probar el include, pone arriba de tu GM en los demas includes
 Codigo Pawno:
1

#include <MenuStore>
  Cantidad de llaves: Abiertas(0)-Cerradas(0) | Lineas Totales: 1
Luego, ve a OnPlayerCommandText y pon el ejemplo que aporte en el post, ahí tendrás el menú "creado" podrás editarlo a tu gusto.

Cualquier otra consulta háblame al privado.
Spoiler:
Patric.exe escribió:
06 Dic 2018 10:24
Orlando Rivas escribió:
05 Dic 2018 20:50
Tiene algún comando para abrir el Menú?, y si es así cual es?
Hola, es un include, vos tenes que crear el comando con dichas funciones.
Si queres probar el include, pone arriba de tu GM en los demas includes
 Codigo Pawno:
1

#include <MenuStore>
  Cantidad de llaves: Abiertas(0)-Cerradas(0) | Lineas Totales: 1
Luego, ve a OnPlayerCommandText y pon el ejemplo que aporte en el post, ahí tendrás el menú "creado" podrás editarlo a tu gusto.

Cualquier otra consulta háblame al privado.
De todas formas para mostrar el menú es con esto:
 Codigo Pawno:
1

MenuStore_Show(playerid, MENUID, "TITULO"); 
  Cantidad de llaves: Abiertas(0)-Cerradas(0) | Lineas Totales: 1
DarkFireYT escribió:
06 Dic 2018 10:50
Spoiler:
Patric.exe escribió:
06 Dic 2018 10:24
Orlando Rivas escribió:
05 Dic 2018 20:50
Tiene algún comando para abrir el Menú?, y si es así cual es?
Hola, es un include, vos tenes que crear el comando con dichas funciones.
Si queres probar el include, pone arriba de tu GM en los demas includes
 Codigo Pawno:
1

#include <MenuStore>
  Cantidad de llaves: Abiertas(0)-Cerradas(0) | Lineas Totales: 1
Luego, ve a OnPlayerCommandText y pon el ejemplo que aporte en el post, ahí tendrás el menú "creado" podrás editarlo a tu gusto.

Cualquier otra consulta háblame al privado.
De todas formas para mostrar el menú es con esto:
 Codigo Pawno:
1

MenuStore_Show(playerid, MENUID, "TITULO"); 
  Cantidad de llaves: Abiertas(0)-Cerradas(0) | Lineas Totales: 1
Es mejor que use todo el ejemplo, para que se de cuenta como funciona.

¿Quién está conectado?

En total hay 2 usuarios conectados :: 0 registrados, 0 ocultos y 2 invitados (basados en usuarios activos en los últimos 5 minutos)
La mayor cantidad de usuarios identificados fue 855 el 27 May 2018 00:03

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 2 invitados