Programación en Pawn - SAMP

[APORTE] Computadora igual a Fenixzone GM OmegaZone

Reglas del Foro

  • Si tu código es corto, no crees un tema nuevo para liberarlo, publica un mensaje en el tema [Funciones] ¡Publica tu código aquí!.
  • Si creas una guía, debes explicar el código claramente. Evita poner la explicación en forma de comentarios dentro del mismo y no olvides utilizar el BBCode correspondiente: [Pawn]Código aquí[/Pawn].
  • Si tu código necesita plugins, includes u otros códigos adicionales para funcionar, debes mencionarlo en el mensaje.
  • Si has utilizado códigos de otros autores, recuerda colocar los créditos correspondientes. (El plagio es motivo de sanción).
  • El título del tema debe contener el nombre del GameMode al cual está destinado el código (puedes utilizar tags). Por ejemplo: "[ZC] Menú para 24/7".

Moderador: Ayudantes

Saque este sistema de la gamemode LinexZone recien liberada lo organize estilo gamemode omegazone espero les guste.

Bueno aca les vengo aportar el sistema de computadora totalmente funcional.

Creditos: Wyatt , Dorzork y Kaiser

Organizado: Junior Luna Amador Nombre Pila: MitsukiZ

news
 Codigo Pawno:
1

new TiempoComputadora[MAX_PLAYERS];
  Cantidad de llaves: Abiertas(0)-Cerradas(0) | Lineas Totales: 1
Agregamos a nuestro LimpiarCuentas en la gamemode omegazone lo siguiente.
 Codigo Pawno:
1

TiempoComputadora[playerid] = 0;
  Cantidad de llaves: Abiertas(0)-Cerradas(0) | Lineas Totales: 1
Agregamos en el foward BajarTiempos
 Codigo Pawno:
1

if(TiempoComputadora[i] > 0) { TiempoComputadora[i]--;	 }
  Cantidad de llaves: Abiertas(1)-Cerradas(1) | Lineas Totales: 1
Agregamos a nuestro OnPlayerKeyStateChange
 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

    if(newkeys & KEY_LOOK_BEHIND) // COMPUTADORA TECLA 2
    {
	if(TiempoComputadora[playerid] != 0)
        {
            new mensajep[126];
            format(mensajep,126,"Por favor espera {FF3300}%d{FFFFFF} segundos para volver a usar la computadora de tu patrulla.",TiempoComputadora[playerid]);
            SendClientMessage(playerid, -1, mensajep);
            return 1;
        }
	new patrulla;
        patrulla = GetPlayerVehicleID(playerid);
        new TextoUnidad[280];
        new Float: PosSAPD[3];
        GetPlayerPos(playerid, PosSAPD[0], PosSAPD[1], PosSAPD[2]);
        {
            if(SAPD(patrulla) && PlayerInfo[playerid][pDuty] == 1)
            {
                format(TextoUnidad,180,"%s inició la búsqueda de sospechosos en la computadora de la patrulla.",NombreJugador(playerid));
                ProxDetector(15.0, playerid, TextoUnidad, COLOR_VERDECLARO,COLOR_VERDECLARO,COLOR_VERDECLARO,COLOR_VERDECLARO,COLOR_VERDECLARO);
                TiempoComputadora[playerid] = 60;
		foreach(Player,b)
		if(ArmadoP(b) && EstaEn(b, 30.0,PosSAPD[0],PosSAPD[1],PosSAPD[2]) && PlayerInfo[b][pDuty] == 0 &&PlayerInfo[b][pCargos] < 3)
		{
                    format(TextoUnidad,sizeof(TextoUnidad),"[Patrulla de %s] {FFFFFF}Resultado: Se detectó a %s armado, proceder con precaución.",NombreJugador(playerid), NombreJugador(b));
                    SendRadioMessagePatrulla(1, TEAM_BLUE_COLOR, TextoUnidad,b);
                    PlayerInfo[b][pCargos] = 3;
                    SetPlayerWantedLevel(b, PlayerInfo[b][pCargos]);
                }
            }
        }
    }
  Cantidad de llaves: Abiertas(8)-Cerradas(8) | Lineas Totales: 31
Agregamos en nuestros stocks lo siguiente
 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

stock SendRadioMessagePatrulla(member, color, string[], id = INVALID_PLAYER_ID)
{
	if(member == 1)
	{
		for(new i=0;i<MAX_PLAYERS;i++)
		{
			if(PlayerInfo[i][pDuty] == 1 && i != id)
			{
			SendClientMessage(i, color, string);
			}
		}
	}
	else
	{
		for(new i=0;i<MAX_PLAYERS;i++)
		{
			if(IsPlayerConnected(i))
			{
				if(PlayerInfo[i][jMiembro] == member && EstadoRadio[i] == 1)
				{
					{
	    				if(PlayerInfo[i][pTiempoCarcelS] > 0 || PlayerInfo[i][pTiempoJailS] > 0) continue;
						SendClientMessage(i, color, string);
					}
				}
			}
		}
	}
}
  Cantidad de llaves: Abiertas(9)-Cerradas(9) | Lineas Totales: 29
Y por ultimo agregamos este otro stock
 Codigo Pawno:
1
2
3
4
5
6
7
8
9
10
11
12

stock ArmadoP(playerid)
{
	if(PlayerInfo[playerid][pWP0] > 0) { return 1; }
	else if(PlayerInfo[playerid][pWP3] > 0) { return 1; }
	else if(PlayerInfo[playerid][pWP4] > 0) { return 1; }
	else if(PlayerInfo[playerid][pWP5] > 0) { return 1; }
	else if(PlayerInfo[playerid][pWP6] > 0) { return 1; }
	else if(PlayerInfo[playerid][pWP7] > 0) { return 1; }
	else if(PlayerInfo[playerid][pWP8] > 0) { return 1; }
	else if(PlayerInfo[playerid][pWP12] > 0) { return 1; }
	return 0;
}
  Cantidad de llaves: Abiertas(9)-Cerradas(9) | Lineas Totales: 12
Junior Luna Amador escribió:
03 Feb 2018 12:31
Saque este sistema de la gamemode LinexZone recien liberada lo organize estilo gamemode omegazone espero les guste.

Bueno aca les vengo aportar el sistema de computadora totalmente funcional.

Creditos: Wyatt

Organizado: Junior Luna Amador Nombre Pila: MitsukiZ

news
 Codigo Pawno:
1

new TiempoComputadora[MAX_PLAYERS];
  Cantidad de llaves: Abiertas(0)-Cerradas(0) | Lineas Totales: 1
Agregamos a nuestro LimpiarCuentas en la gamemode omegazone lo siguiente.
 Codigo Pawno:
1

TiempoComputadora[playerid] = 0;
  Cantidad de llaves: Abiertas(0)-Cerradas(0) | Lineas Totales: 1
Agregamos en el foward BajarTiempos
 Codigo Pawno:
1

if(TiempoComputadora[i] > 0) { TiempoComputadora[i]--;	 }
  Cantidad de llaves: Abiertas(1)-Cerradas(1) | Lineas Totales: 1
Agregamos a nuestro
 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

    if(newkeys & KEY_LOOK_BEHIND) // COMPUTADORA TECLA 2
    {
	if(TiempoComputadora[playerid] != 0)
        {
            new mensajep[126];
            format(mensajep,126,"Por favor espera {FF3300}%d{FFFFFF} segundos para volver a usar la computadora de tu patrulla.",TiempoComputadora[playerid]);
            SendClientMessage(playerid, -1, mensajep);
            return 1;
        }
	new patrulla;
        patrulla = GetPlayerVehicleID(playerid);
        new TextoUnidad[280];
        new Float: PosSAPD[3];
        GetPlayerPos(playerid, PosSAPD[0], PosSAPD[1], PosSAPD[2]);
        {
            if(SAPD(patrulla) && PlayerInfo[playerid][pDuty] == 1)
            {
                format(TextoUnidad,180,"%s inició la búsqueda de sospechosos en la computadora de la patrulla.",NombreJugador(playerid));
                ProxDetector(15.0, playerid, TextoUnidad, COLOR_VERDECLARO,COLOR_VERDECLARO,COLOR_VERDECLARO,COLOR_VERDECLARO,COLOR_VERDECLARO);
                TiempoComputadora[playerid] = 60;
		foreach(Player,b)
		if(ArmadoP(b) && EstaEn(b, 30.0,PosSAPD[0],PosSAPD[1],PosSAPD[2]) && PlayerInfo[b][pDuty] == 0 &&PlayerInfo[b][pCargos] < 3)
		{
                    format(TextoUnidad,sizeof(TextoUnidad),"[Patrulla de %s] {FFFFFF}Resultado: Se detectó a %s armado, proceder con precaución.",NombreJugador(playerid), NombreJugador(b));
                    SendRadioMessagePatrulla(1, TEAM_BLUE_COLOR, TextoUnidad,b);
                    PlayerInfo[b][pCargos] = 3;
                    SetPlayerWantedLevel(b, PlayerInfo[b][pCargos]);
                }
            }
        }
    }
  Cantidad de llaves: Abiertas(8)-Cerradas(8) | Lineas Totales: 31
Agregamos en nuestros stocks lo siguiente
 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

stock SendRadioMessagePatrulla(member, color, string[], id = INVALID_PLAYER_ID)
{
	if(member == 1)
	{
		for(new i=0;i<MAX_PLAYERS;i++)
		{
			if(PlayerInfo[i][pDuty] == 1 && i != id)
			{
			SendClientMessage(i, color, string);
			}
		}
	}
	else
	{
		for(new i=0;i<MAX_PLAYERS;i++)
		{
			if(IsPlayerConnected(i))
			{
				if(PlayerInfo[i][jMiembro] == member && EstadoRadio[i] == 1)
				{
					{
	    				if(PlayerInfo[i][pTiempoCarcelS] > 0 || PlayerInfo[i][pTiempoJailS] > 0) continue;
						SendClientMessage(i, color, string);
					}
				}
			}
		}
	}
}
  Cantidad de llaves: Abiertas(9)-Cerradas(9) | Lineas Totales: 29
No entiendo por que razón aportas esto si ya está liberado...
Si es cierto es liberado pero cual es la razon mucha gente tiene miedo de usar gamemode de linexzone debido aque la base de datos (supuestamente o nose si es verdad) tiene un archivo malisioso igual la gamemode y la web en caso de la web es muy vulnerable.
Pero sí no se puede prender un proyecto con esto.. * A SEGUN SUS CRITERIOS *. ¿Porqué no abren el pawno sacan el sistema y lo ponen en su gamemode?.... es más de lo mismo, pero bueno.. tú lo sacaste y lo aportaste, y es tú tiempo, hay qué respetarlo, buen aporte.. -good
Buen aporte para todas los servidores Zone que se empeñan en parecer Fenix Zone...

Aunque esa funcion con el keyword stock esta de mas...
No es necesario que agreges Stock..
en pawno no es necesario agregar ningun keyword a las plain functions
La funcion trabajara correctamente de esta forma:
Spoiler:
 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

SendRadioMessagePatrulla(member, color, string[], id = INVALID_PLAYER_ID)
{
	if(member == 1)
	{
		for(new i=0;i<MAX_PLAYERS;i++)
		{
			if(PlayerInfo[i][pDuty] == 1 && i != id)
			{
			SendClientMessage(i, color, string);
			}
		}
	}
	else
	{
		for(new i=0;i<MAX_PLAYERS;i++)
		{
			if(IsPlayerConnected(i))
			{
				if(PlayerInfo[i][jMiembro] == member && EstadoRadio[i] == 1)
				{
					{
	    				if(PlayerInfo[i][pTiempoCarcelS] > 0 || PlayerInfo[i][pTiempoJailS] > 0) continue;
						SendClientMessage(i, color, string);
					}
				}
			}
		}
	}
}
  Cantidad de llaves: Abiertas(9)-Cerradas(9) | Lineas Totales: 29
Generalmente los stocks se usan para la creación de includes y no deberian de usarse en GM's o Filterscripts
Sonic019 escribió:
03 Feb 2018 12:35
Junior Luna Amador escribió:
03 Feb 2018 12:31
Saque este sistema de la gamemode LinexZone recien liberada lo organize estilo gamemode omegazone espero les guste.

Bueno aca les vengo aportar el sistema de computadora totalmente funcional.

Creditos: Wyatt

Organizado: Junior Luna Amador Nombre Pila: MitsukiZ

news
 Codigo Pawno:
1

new TiempoComputadora[MAX_PLAYERS];
  Cantidad de llaves: Abiertas(0)-Cerradas(0) | Lineas Totales: 1
Agregamos a nuestro LimpiarCuentas en la gamemode omegazone lo siguiente.
 Codigo Pawno:
1

TiempoComputadora[playerid] = 0;
  Cantidad de llaves: Abiertas(0)-Cerradas(0) | Lineas Totales: 1
Agregamos en el foward BajarTiempos
 Codigo Pawno:
1

if(TiempoComputadora[i] > 0) { TiempoComputadora[i]--;	 }
  Cantidad de llaves: Abiertas(1)-Cerradas(1) | Lineas Totales: 1
Agregamos a nuestro
 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

    if(newkeys & KEY_LOOK_BEHIND) // COMPUTADORA TECLA 2
    {
	if(TiempoComputadora[playerid] != 0)
        {
            new mensajep[126];
            format(mensajep,126,"Por favor espera {FF3300}%d{FFFFFF} segundos para volver a usar la computadora de tu patrulla.",TiempoComputadora[playerid]);
            SendClientMessage(playerid, -1, mensajep);
            return 1;
        }
	new patrulla;
        patrulla = GetPlayerVehicleID(playerid);
        new TextoUnidad[280];
        new Float: PosSAPD[3];
        GetPlayerPos(playerid, PosSAPD[0], PosSAPD[1], PosSAPD[2]);
        {
            if(SAPD(patrulla) && PlayerInfo[playerid][pDuty] == 1)
            {
                format(TextoUnidad,180,"%s inició la búsqueda de sospechosos en la computadora de la patrulla.",NombreJugador(playerid));
                ProxDetector(15.0, playerid, TextoUnidad, COLOR_VERDECLARO,COLOR_VERDECLARO,COLOR_VERDECLARO,COLOR_VERDECLARO,COLOR_VERDECLARO);
                TiempoComputadora[playerid] = 60;
		foreach(Player,b)
		if(ArmadoP(b) && EstaEn(b, 30.0,PosSAPD[0],PosSAPD[1],PosSAPD[2]) && PlayerInfo[b][pDuty] == 0 &&PlayerInfo[b][pCargos] < 3)
		{
                    format(TextoUnidad,sizeof(TextoUnidad),"[Patrulla de %s] {FFFFFF}Resultado: Se detectó a %s armado, proceder con precaución.",NombreJugador(playerid), NombreJugador(b));
                    SendRadioMessagePatrulla(1, TEAM_BLUE_COLOR, TextoUnidad,b);
                    PlayerInfo[b][pCargos] = 3;
                    SetPlayerWantedLevel(b, PlayerInfo[b][pCargos]);
                }
            }
        }
    }
  Cantidad de llaves: Abiertas(8)-Cerradas(8) | Lineas Totales: 31
Agregamos en nuestros stocks lo siguiente
 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

stock SendRadioMessagePatrulla(member, color, string[], id = INVALID_PLAYER_ID)
{
	if(member == 1)
	{
		for(new i=0;i<MAX_PLAYERS;i++)
		{
			if(PlayerInfo[i][pDuty] == 1 && i != id)
			{
			SendClientMessage(i, color, string);
			}
		}
	}
	else
	{
		for(new i=0;i<MAX_PLAYERS;i++)
		{
			if(IsPlayerConnected(i))
			{
				if(PlayerInfo[i][jMiembro] == member && EstadoRadio[i] == 1)
				{
					{
	    				if(PlayerInfo[i][pTiempoCarcelS] > 0 || PlayerInfo[i][pTiempoJailS] > 0) continue;
						SendClientMessage(i, color, string);
					}
				}
			}
		}
	}
}
  Cantidad de llaves: Abiertas(9)-Cerradas(9) | Lineas Totales: 29
No entiendo por que razón aportas esto si ya está liberado...
dame creditos ami por la liberacion, y kaiser tambien.
if(newkeys & KEY_LOOK_BEHIND) // COMPUTADORA TECLA 2
{
if(TiempoComputadora[playerid] != 0)
{
new mensajep[126];
format(mensajep,126,"Por favor espera {FF3300}%d{FFFFFF} segundos para volver a usar la computadora de tu patrulla.",TiempoComputadora[playerid]);
SendClientMessage(playerid, -1, mensajep);
return 1;
}
new patrulla;
patrulla = GetPlayerVehicleID(playerid);
new TextoUnidad[280];
new Float: PosSAPD[3];
GetPlayerPos(playerid, PosSAPD[0], PosSAPD[1], PosSAPD[2]);
{
if(SAPD(patrulla) && PlayerInfo[playerid][pDuty] == 1)
{
format(TextoUnidad,180,"%s inició la búsqueda de sospechosos en la computadora de la patrulla.",NombreJugador(playerid));
ProxDetector(15.0, playerid, TextoUnidad, COLOR_VERDECLARO,COLOR_VERDECLARO,COLOR_VERDECLARO,COLOR_VERDECLARO,COLOR_VERDECLARO);
TiempoComputadora[playerid] = 60;
foreach(Player,b)
if(ArmadoP(b) && EstaEn(b, 30.0,PosSAPD[0],PosSAPD[1],PosSAPD[2]) && PlayerInfo[pDuty] == 0 &&PlayerInfo[pCargos] < 3)
{
format(TextoUnidad,sizeof(TextoUnidad),"[Patrulla de %s] {FFFFFF}Resultado: Se detectó a %s armado, proceder con precaución.",NombreJugador(playerid), NombreJugador(b));
SendRadioMessagePatrulla(1, TEAM_BLUE_COLOR, TextoUnidad,b);
PlayerInfo[pCargos] = 3;
SetPlayerWantedLevel(b, PlayerInfo[pCargos]);
}
}
}
}








Perdon la malestia soy nuevo en esto de pawno esto donde se tendria que agregar ??? grasias -mfr_lol
misael32 escribió:
12 Feb 2018 00:54
if(newkeys & KEY_LOOK_BEHIND) // COMPUTADORA TECLA 2
{
if(TiempoComputadora[playerid] != 0)
{
new mensajep[126];
format(mensajep,126,"Por favor espera {FF3300}%d{FFFFFF} segundos para volver a usar la computadora de tu patrulla.",TiempoComputadora[playerid]);
SendClientMessage(playerid, -1, mensajep);
return 1;
}
new patrulla;
patrulla = GetPlayerVehicleID(playerid);
new TextoUnidad[280];
new Float: PosSAPD[3];
GetPlayerPos(playerid, PosSAPD[0], PosSAPD[1], PosSAPD[2]);
{
if(SAPD(patrulla) && PlayerInfo[playerid][pDuty] == 1)
{
format(TextoUnidad,180,"%s inició la búsqueda de sospechosos en la computadora de la patrulla.",NombreJugador(playerid));
ProxDetector(15.0, playerid, TextoUnidad, COLOR_VERDECLARO,COLOR_VERDECLARO,COLOR_VERDECLARO,COLOR_VERDECLARO,COLOR_VERDECLARO);
TiempoComputadora[playerid] = 60;
foreach(Player,b)
if(ArmadoP(b) && EstaEn(b, 30.0,PosSAPD[0],PosSAPD[1],PosSAPD[2]) && PlayerInfo[pDuty] == 0 &&PlayerInfo[pCargos] < 3)
{
format(TextoUnidad,sizeof(TextoUnidad),"[Patrulla de %s] {FFFFFF}Resultado: Se detectó a %s armado, proceder con precaución.",NombreJugador(playerid), NombreJugador(b));
SendRadioMessagePatrulla(1, TEAM_BLUE_COLOR, TextoUnidad,b);
PlayerInfo[pCargos] = 3;
SetPlayerWantedLevel(b, PlayerInfo[pCargos]);
}
}
}
}








Perdon la malestia soy nuevo en esto de pawno esto donde se tendria que agregar ??? grasias -mfr_lol


x2
men arriba en el post puse en que lugares hay que ponerlo,cierto los stocks se pueden poner en cualquier lugar de la gamemode que quede debajo de la llave final de un comando osea esto }
Junior Luna Amador escribió:
20 Feb 2018 20:00
men arriba en el post puse en que lugares hay que ponerlo,cierto los stocks se pueden poner en cualquier lugar de la gamemode que quede debajo de la llave final de un comando osea esto }



si ya todo agrege pero me falta el que puse arriva nose donde se agrege
Junior Luna Amador escribió:
20 Feb 2018 20:00
men arriba en el post puse en que lugares hay que ponerlo,cierto los stocks se pueden poner en cualquier lugar de la gamemode que quede debajo de la llave final de un comando osea esto }
me da error en esta linea if(ArmadoP(b) && EstaEn(b, 30.0,PosSAPD[0],PosSAPD[1],PosSAPD[2]) && PlayerInfo[pDuty] == 0 &&PlayerInfo[pCargos] < 3)

me da error en EstaEn no la reconoce..
agus123321 escribió:
25 Feb 2018 10:58
Junior Luna Amador escribió:
20 Feb 2018 20:00
men arriba en el post puse en que lugares hay que ponerlo,cierto los stocks se pueden poner en cualquier lugar de la gamemode que quede debajo de la llave final de un comando osea esto }
me da error en esta linea if(ArmadoP(b) && EstaEn(b, 30.0,PosSAPD[0],PosSAPD[1],PosSAPD[2]) && PlayerInfo[pDuty] == 0 &&PlayerInfo[pCargos] < 3)

me da error en EstaEn no la reconoce..



men cambia el EstaEn por IsPlayerInRangeOfPoint y listo
Junior Luna Amador escribió:
25 Feb 2018 11:58
agus123321 escribió:
25 Feb 2018 10:58
Junior Luna Amador escribió:
20 Feb 2018 20:00
men arriba en el post puse en que lugares hay que ponerlo,cierto los stocks se pueden poner en cualquier lugar de la gamemode que quede debajo de la llave final de un comando osea esto }
me da error en esta linea if(ArmadoP(b) && EstaEn(b, 30.0,PosSAPD[0],PosSAPD[1],PosSAPD[2]) && PlayerInfo[pDuty] == 0 &&PlayerInfo[pCargos] < 3)

me da error en EstaEn no la reconoce..



men cambia el EstaEn por IsPlayerInRangeOfPoint y listo


TE MANDE Mensaje privado.

¿Quién está conectado?

En total hay 0 usuarios conectados :: 0 registrados, 0 ocultos y 0 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 0 invitados