1. sayfa (Toplam 1 sayfa)

Reklam Sistemi

Gönderilme zamanı: Pzr Eyl 25, 2016 12:00 pm
gönderen Okay Uçar
Bu Sistem Slotlar İçin Olucaktır

Reklam At Diye Bir Menümüz Olucaktır Altındada Puan Yazıcaktır Her Reklam Attığında Puan Bölümüne 1 Puan Daha Eklenecektir Fakat Reklam Atınca Bir Sonraki Reklam 30 Dakika Sonra Atılmasına İzin Verecektir

Reklam Menü

Reklam At
Eğer Reklam Attıysa
Reklam At ( Kullanım Hakkınız Bitti 30 Dakika Sonra Tekrar Deneyiniz ) Menüsü Olsun Altında Puan
Puan [ X ]

Bu Şekilde Bu Menüyü Yapan Moda Çok TEŞEKKÜR Ediyorum

Reklam Sistemi

Gönderilme zamanı: Pzr Eyl 25, 2016 12:22 pm
gönderen Taha Demirbaş
biraz bekleyin gün içerisinde bitecektir. Fakat elinde hazır olan arkadaşlar var ise atacaklardır...

Reklam Sistemi

Gönderilme zamanı: Pzr Eyl 25, 2016 12:23 pm
gönderen memoby
belli bir puana ulasıncada adminlikmi vereceksiniz

Reklam Sistemi

Gönderilme zamanı: Pzr Eyl 25, 2016 3:57 pm
gönderen Okay Uçar
GÜNCEL
@By.Dehset

Reklam Sistemi

Gönderilme zamanı: Pzr Eyl 25, 2016 4:31 pm
gönderen amad
Denemedim açık sorun vs. olursa bildirirsin tekrar bakarım

Kod: Tümünü seç

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>

#define PLUGIN "Reklam At"
#define VERSION "2.0"
#define AUTHOR "By Deh$eT"

new puan[33],sure[32]
new bool:reklam_engel[33];


public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
    
    register_clcmd("say /reklamat","reklam")
}
public client_connect(id)
{
    reklam_engel[id] = false
    puan[id] = 0
    sure[id] = 0
}
public client_disconnect(id)
{
    reklam_engel[id] = false
    puan[id] = 0
    sure[id] = 0
}
public reklam(id)
{
    static amenu[512];
    new menu = menu_create("\yReklam \rMenu", "reklam_handler")
    
    if(reklam_engel[id]) {
        
        menu_additem(menu, "\yReklam \d[\rAT\d]", "1", 0);
    }
    else {    
        menu_additem(menu, "\dReklam [AT]", "2", 0);
        formatex(amenu,charsmax(amenu),"\yPuaniniz : \r%d",puan[id])
        menu_additem(menu,amenu,"3")
        
        menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
        menu_display(id, menu, 0);
    }
    
}
public menu_handler(id, menu, item)
{
    
    if( item == MENU_EXIT )
    {
        menu_destroy(menu);
        return PLUGIN_HANDLED;
    }
    
    new data[6], iName[64];
    new access, callback;
    menu_item_getinfo(menu, item, access, data,5, iName, 63, callback);
    new key = str_to_num(data);
    new name[32]
    get_user_name(id,name,31)
    
    switch(key)
    {
        case 1: {
            renkli_yazi(0,"!g%s : !nSlotluk Ve Komutculuk icin Say'a !t/ts3 !nyaziniz.",name)
            puan[id]+= 1
            reklam_engel[id] = true
            sure[id] = 1800
            check(id)
            set_task(1800.0,"finish",id)
        }
        case 2: { 
            renkli_yazi(id,"!g%d !nsaniye sonra tekrar deneyiniz.",sure[id])
        }
        case 3: {
            reklam(id)
        }
    }
    
    menu_destroy(menu);
    return PLUGIN_HANDLED;
}
public check(id)
{
    sure[id]--
    if(!reklam_engel[id])
    {
        sure[id] = 0
    }
    else 
    {
        check(id)
    }
}
public finish(id)
{
    reklam_engel[id] = false
    renkli_yazi(id,"!gReklam Atma bekleme sureniz sona ermisdir.")
    renkli_yazi(id,"!t/reklamat !nyazarak tekrar reklam atabilirsiniz.")
}
stock renkli_yazi(const id, const input[], any:...)
{
    new count = 1, players[32];
    static msg[191];
    vformat(msg, 190, input, 3);
    
    replace_all(msg, 190, "!n", "^x01"); // Default Renk(Sarı)
    replace_all(msg, 190, "!g", "^x04"); // Yeşil Renk
    replace_all(msg, 190, "!t", "^x03"); // Takım Renk( CT mavi , T kırmızı )
    
    if (id) players[0] = id; else get_players(players, count, "ch"); {
    for (new i = 0; i < count; i++)
    {
        if (is_user_connected(players[i]))
        {
            
            message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]);
            write_byte(players[i]);
            write_string(msg);
            message_end();
        }
        }
        
    }
}

 

Reklam Sistemi

Gönderilme zamanı: Pzr Eyl 25, 2016 6:42 pm
gönderen Taha Demirbaş
Puanları kaydediyor mu ?
Kaydediyorsa pluginin şemasını başka eklentilerde kullanacağım da. Nvault yada config yazdırma göremeyince sorayım dedim.

Reklam Sistemi

Gönderilme zamanı: Pzr Eyl 25, 2016 7:01 pm
gönderen Yek'-ta
kaydetmiyor, nvaulta alsanız bile adam retry çekip tekrar tekrar reklam atıp rahat puan kasar. Nvault ile zaman kontrollü yapın. Biraz zor, uğraştırır. Played time eklentisine bakarak bir şeyler ayıklayabilirsiniz o eklentiden.

Reklam Sistemi

Gönderilme zamanı: Pzr Eyl 25, 2016 7:04 pm
gönderen Taha Demirbaş
buna en kolayı task çalıştırıp yeni gelenin bir süre reklam yapmamasını sağlarsak adam puan kasamaz. Nvault ekleye bilirsem nvault ekler author değiştirmeden konuya yüklerim.

Reklam Sistemi

Gönderilme zamanı: Pzr Eyl 25, 2016 7:21 pm
gönderen Taha Demirbaş
Denenmedi. Nvault Eklendi. Girişte 10 Dakika Reklam Yapılamıyor (set_task 600.0)

Kod: Tümünü seç

/* Plugin generated by AMXX-Studio */

#include <amxmodx>
#include <amxmisc>
#include <nvault>

#define PLUGIN "Reklam At"
#define VERSION "2.0"
#define AUTHOR "By Deh$eT"

new puan[33],sure[32]
new bool:reklam_engel[33];
new g_vault

public plugin_init() {
    register_plugin(PLUGIN, VERSION, AUTHOR)
    
    register_clcmd("say /reklamat","reklam")
    g_vault = nvault_open("reklamat")
}
public client_connect(id)
{
    reklam_engel[id] = true

    sure[id] = 600
    set_task(600.0,"finish",id) // Gelen direkt reklam atmamasını saglayacak
    LoadData(id)
}
public client_disconnect(id)
{
    reklam_engel[id] = false
  
    sure[id] = 0
    SaveData(id)
    
}

public SaveData(id)
{
	new name[32]
	get_user_name(id, name, 31)
	new vaultkey[64], vaultdata[256]
    
	format(vaultkey, 63, "%s", name)
	format(vaultdata, 255, "%i", puan[id])
	nvault_set(g_vault, vaultkey, vaultdata)
    
	return PLUGIN_CONTINUE
}

public LoadData(id)
{
	new name[32]
	get_user_name(id, name, 31)
	new vaultkey[64], vaultdata[256]
    
	format(vaultkey, 63, "%s", name)
	format(vaultdata, 255, "%i", puan[id])
	nvault_get(g_vault, vaultkey, vaultdata, 255)
	
	new points_user[10]
	parse(vaultdata, points_user, 9)
	
	new points_set = str_to_num(points_user)
	puan[id] = points_set
    
	return PLUGIN_CONTINUE
}

public reklam(id)
{
    static amenu[512];
    new menu = menu_create("\yReklam \rMenu", "reklam_handler")
    
    if(reklam_engel[id]) {
        
        menu_additem(menu, "\yReklam \d[\rAT\d]", "1", 0);
    }
    else {    
        menu_additem(menu, "\dReklam [AT]", "2", 0);
        formatex(amenu,charsmax(amenu),"\yPuaniniz : \r%d",puan[id])
        menu_additem(menu,amenu,"3")
        
        menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
        menu_display(id, menu, 0);
    }
    
}
public menu_handler(id, menu, item)
{
    
    if( item == MENU_EXIT )
    {
        menu_destroy(menu);
        return PLUGIN_HANDLED;
    }
    
    new data[6], iName[64];
    new access, callback;
    menu_item_getinfo(menu, item, access, data,5, iName, 63, callback);
    new key = str_to_num(data);
    new name[32]
    get_user_name(id,name,31)
    
    switch(key)
    {
        case 1: {
            renkli_yazi(0,"!g%s : !nSlotluk Ve Komutculuk icin Say'a !t/ts3 !nyaziniz.",name)
            puan[id]+= 1
            reklam_engel[id] = true
            sure[id] = 1800
            check(id)
            set_task(1800.0,"finish",id)
        }
        case 2: { 
            renkli_yazi(id,"!g%d !nsaniye sonra tekrar deneyiniz.",sure[id])
        }
        case 3: {
            reklam(id)
        }
    }
    
    menu_destroy(menu);
    return PLUGIN_HANDLED;
}
public check(id)
{
    sure[id]--
    if(!reklam_engel[id])
    {
        sure[id] = 0
    }
    else 
    {
        check(id)
    }
}
public finish(id)
{
    reklam_engel[id] = false
    renkli_yazi(id,"!gReklam Atma bekleme sureniz sona ermisdir.")
    renkli_yazi(id,"!t/reklamat !nyazarak tekrar reklam atabilirsiniz.")
}
stock renkli_yazi(const id, const input[], any:...)
{
    new count = 1, players[32];
    static msg[191];
    vformat(msg, 190, input, 3);
    
    replace_all(msg, 190, "!n", "^x01"); // Default Renk(Sarı)
    replace_all(msg, 190, "!g", "^x04"); // Yeşil Renk
    replace_all(msg, 190, "!t", "^x03"); // Takım Renk( CT mavi , T kırmızı )
    
    if (id) players[0] = id; else get_players(players, count, "ch"); {
    for (new i = 0; i < count; i++)
    {
        if (is_user_connected(players[i]))
        {
            
            message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]);
            write_byte(players[i]);
            write_string(msg);
            message_end();
        }
        }
        
    }
}