سلام ، آیا این بازدید اول شماست ؟ یا
logo_forum_header

تبلیغات
×
+
سفارش تبلیغات

نمایش نتایج: از 1 به 1 از 1
Like Tree1Likes
  • 1 Post By 1213

موضوع: [ اسکریپت ] Npc Trade Currency برای OregonCore

  1. #1
    دستاورد ها:
    برچسب زن کلاس اول۱۰۰۰ امتیاز1 سال ثبت نام شده استRecommendation Second Class
    جایزه ها:
    استاد برچسب زن

    شماره عضویت
    891
    تاریخ عضویت
    Dec 2015
    محل سکونت
    بوشهر
    نوشته ها
    195
    نسل
    نسل مورد علاقه
    نژاد
    نژاد  مورد علاقه
    کلاس
     کلاس  مورد علاقه
    سورس
     سورس مورد علاقه
    پچ
    پچ مورد علاقه
    پسندیده : 46
    مورد پسند : 50 بار در 45 پست
    سیستم عامل و مرورگر:

    [ اسکریپت ] Npc Trade Currency برای OregonCore

    سلام و خسته نباشید خدمت دوستان عزیز :))

    ی کاستوم اسکریپت که Gold میگیره Honor میده و بر عکس
    کافیه یک npc با Faction 35 و ScriptName : npc_trade_currency

    کد Cpp :
    #include "ScriptPCH.h"

    #define WARN_RESET_GOLD_HONOR "Are you sure to trade gold for honor points ?"
    #define WARN_RESET_HONOR_GOLD "Are you sure to trade honor points for gold ?"


    bool GossipSelect_npc_trade_currency(Player *player, Creature *_Creature, uint32 sender, uint32 action)
    {
    switch (action - GOSSIP_ACTION_INFO_DEF)
    {
    case 1:
    if (player->GetMoney() < 5000*GOLD)
    {
    player->GetSession()->SendNotification("You need to have at least 5000 gold.");
    player->PlayerTalkClass->CloseGossip();
    return true;
    }


    player->ModifyMoney(-5000*GOLD);
    player->ModifyHonorPoints(2000);
    break;
    case 2:
    if (player->GetHonorPoints() < 2000)
    {
    player->GetSession()->SendNotification("You need to have at least 2000 honor points.");
    player->PlayerTalkClass->CloseGossip();
    return true;
    }


    player->ModifyHonorPoints(-2000);
    player->ModifyMoney(5000*GOLD);
    break;
    }


    player->PlayerTalkClass->CloseGossip();
    return true;
    }


    bool GossipHello_npc_trade_currency(Player *player, Creature *_Creature)
    {
    if (player->IsInCombat())
    return false;


    player->ADD_GOSSIP_ITEM_EXTENDED(0, "5000G To 2000HonorPoints", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+1, WARN_RESET_GOLD_HONOR, 0, false);
    player->ADD_GOSSIP_ITEM_EXTENDED(0, "2000HonorPoints To 5000G", GOSSIP_SENDER_MAIN, GOSSIP_ACTION_INFO_DEF+2, WARN_RESET_HONOR_GOLD, 0, false);
    player->PlayerTalkClass->SendGossipMenu(2, _Creature->GetGUID());


    return true;
    }


    void AddSC_npc_trade_currency()
    {
    Script *newscript;


    newscript = new Script;
    newscript->Name = "npc_trade_currency";
    newscript->pGossipHello = &GossipHello_npc_trade_currency;
    newscript->pGossipSelect = &GossipSelect_npc_trade_currency;
    newscript->RegisterSelf();
    }




    برای تغییر مقدار گلدی که بگیره :

                if (player->GetMoney() < 5000*GOLD)

                player->ModifyMoney(-5000*GOLD);


    برای تغییر مقدار گلدی که بده :

               player->ModifyMoney(5000*GOLD);


    برای تغییر مقدار Honor که بگیره :

                if (player->GetHonorPoints() < 2000)

                player->ModifyHonorPoints(-2000);


    برای مقدار Honor که بده :

                player->ModifyHonorPoints(2000);


    حالا کامپایل :))

    کاربر مقابل پست 1213 عزیز را پسندیده است:

    Nightprince (09-05-2017)

    Nightprince likes this.

  2. # ADS
    سیستم تبلیغات
    تاریخ عضویت
    01/01/2014
    محل سکونت
    Advertising world
    نوشته ها
    پستی ندارد.
     

کلمات کلیدی این موضوع

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •