Solo usuarios registrados pueden comentar y agradecer, Logueate o Registrate

Autor Topic: Querry - Regalo PcP para jugadores Online - Season 3  (Visto 98 veces)

0 Miembros and 1 Guest are viewing this topic.

Offline LuchoToledo Posteado: December 22, 2025, 04:49:36 PM | Modificado: December 22, 2025, 04:56:14 PM by LuchoToledo

  • 0 puntos por ventas
  • *
  • Rank: Dedicado
  • Posts: 32
  • Gracias recibida: 1
  • ar
Buenas tardes gente!!!

Se acerca navidad y quería dejar mi pequeño aporte, es la primea vez que realizo un aporte y me aventure hace 2 meses con este proyecto de Mu Online.

Esto esta probado en un Season 3 KOR - No lo he verificado en otra Season ya que poseo mi servidor S3 y estoy realizando las pruebas ahí.

Bueno como dice el titulo, acá les dejo un pequeño querry donde pueden otorgarle a todos sus jugadores Online el regalo de PCPoints (esto depende de la tabla que utilicen).

Esto es para entregas de 15.000 PcPoints (en mi caso) por unica vez por CUENTA y por IP, con esto no tendrán duplicado de premio por más que el jugador lo reclame



//Primero creamos la Tabla del Regalo//

CREATE TABLE Event_Navidad_Gift (
    AccountID VARCHAR(10) NOT NULL,
    IPAddress VARCHAR(50) NOT NULL,
    ClaimDate DATE NOT NULL,
    CONSTRAINT PK_Event_Navidad PRIMARY KEY (AccountID, IPAddress)
)

Una vez creada la tabla procedemos a crear los diferentes PROCEDURE con los cuales vamos a trabajar, se los dejaré por colores, donde finaliza el END es uno nuevo, pueden copiar de todas maneras todo y lanzarlo, pero ojo con las partes texto:

CREATE PROCEDURE SP_Event_Navidad_Gift
    @AccountID VARCHAR(10),
    @IP VARCHAR(50)
AS
BEGIN
    SET NOCOUNT ON;

    DECLARE @Today DATE = CAST(GETDATE() AS DATE);

    -- Solo 25 de diciembre
    IF (MONTH(@Today) <> 12 OR DAY(@Today) <> 25) aca es para el 25 de diciembre por eso va el 12 en MONTH y 25 DAY (luego borrar esta linea de texto, no es solo copiar y pegar)
    BEGIN
        SELECT 0 AS Result, 'El evento de Navidad solo está disponible el 25 de diciembre.' AS Message;
        RETURN;
    END

    -- Verificar si ya reclamó por cuenta o IP
    IF EXISTS (
        SELECT 1
        FROM Event_Navidad_Gift
        WHERE AccountID = @AccountID
           OR IPAddress = @IP
    )
    BEGIN
        SELECT 0 AS Result, 'Ya reclamaste el regalo de Navidad desde esta cuenta o IP.' AS Message;
        RETURN;
    END

    -- Entregar 15000 PcPoint
    UPDATE PcPointData
    SET PcPoint = ISNULL(PcPoint, 0) + 15000
    WHERE AccountID = @AccountID;

    IF @@ROWCOUNT = 0
    BEGIN
        INSERT INTO PcPointData (AccountID, PcPoint)
        VALUES (@AccountID, 15000);
    END

    -- Registrar reclamo
    INSERT INTO Event_Navidad_Gift (AccountID, IPAddress, ClaimDate)
    VALUES (@AccountID, @IP, @Today);

    SELECT 1 AS Result, '¡Felices Fiestas! Recibiste 15.000 PcPoint.' AS Message;
END

Recuerden que pueden adaptarlo dependiendo su tabla, en su caso yo utilizo PCPoints - pueden probar con WC- Goblin etc.

NOTA: Esto esta probado en un SEASON 3 - KOR con cliente 1.04j por si acaso, pueden probar, yo aun no lo he echo ya que no poseo otro servidor para probar.

Espero que les sirva, felices fiestas!!

Gracias:


Solo usuarios registrados pueden comentar y agradecer, Logueate o Registrate


 

Related Topics

  Subject / Started by Replies Last post
5 Replies
2806 Views
Last post September 20, 2019, 07:14:52 AM
by louis
3 Replies
1549 Views
Last post May 14, 2020, 03:37:48 AM
by Hoangsy99
3 Replies
1788 Views
Last post July 04, 2021, 01:53:09 AM
by lunaticodeveloper
0 Replies
429 Views
Last post January 04, 2024, 05:32:50 PM
by jknfkls
2 Replies
333 Views
Last post December 11, 2025, 11:42:49 AM
by LuchoToledo