最新最全最权威的各类手游,端游,页游游戏信息开服信息,尽在游民之家. 订阅微信

烈焰服务端经过代码优化的转生脚本代码

发表时间:2016-03-08 13:22点击人气:责任编辑:admin

function ontalk1230(npc,event,player)
    player:echo(0,npc:GetLowGUID(),[[
    
    <font color='#FF0000'>转生说明:</font>
#&talk_line#&
    转生一共20级,越后面的级别翻倍增加非常强大
    的属性加成,每个级别都有专属的称号。
    转生需要转生修为,可以在转生岛中获得。
    BOSS还有几率爆圣装、战魂珠大、小怪有几率爆黄金首饰。
    <font color='#FFFF00'>PS:进入转生岛需要修仙9阶以上,或者100万元宝</font>
#&talk_line#&
       <u><a href='event:M2402,1'>开始转生</a></u>        <u><a href='event:M2402,2'>送我去转生岛</a></u>    
    
]]);
end

function ontalk1230_1(npc,event,player)
    local minattack = {100,200,400,600,800,1000,1200,1300,1900,2200,2600,3000,3400,3800,4600,5600,7100,9100,12100,20100};
    local maxattack = {200,500,800,1100,1400,1700,2200,2500,3100,3400,3800,4200,4600,5000,5800,6800,8300,10300,13300,21300};
    local lifeupper = {
                        {2,4,6,8,10,13,15,19,25,28,35,40,45,50,55,65,75,90,110,150},
                        {6,8,10,14,16,20,23,30,38,45,50,60,65,70,90,100,110,120,150,220},
                        {4,6,8,10,13,17,19,24,30,35,45,50,55,60,70,80,90,105,130,170}
                      };
    local extrahurt = {200,500,800,1100,1400,1700,2000,2300,2900,3200,3600,4000,4400,4800,5300,6000,7500,9500,12500,20000};
    local extrarate = {0.2,0.4,0.6,0.8,1,1.2,1.4,1.6,2,2.3,2.6,2.9,3.2,3.5,3.8,4.1,4.4,5,5.5,6,};
    local addinter = {
                        {1000,4000,7000,10000,13000,18000,21000,24000,28000,33000,37000,41000,45000,49000,55000,60000,77000,90000,120000,200000},
                        {350,2000,2500,4000,5000,7000,8000,11000,15000,19000,22000,25000,28000,31000,34000,38000,43000,50000,70000,120000},
                        {600,2500,4000,6000,7000,10000,11000,14000,18000,22000,25000,28000,31000,34000,37000,41000,48000,60000,90000,150000}
                     };
    local recoverinter = {100,200,300,400,500,600,700,800,1000,1200,1400,1600,1800,2000,2200,2500,2900,3400,4000,6000};
    local needvalues = {10000,30000,75000,150000,262500,393750,551250,716630,895780,1074940,1268430,1471370,1692080,1928970,2189380,2474000,2790680,3142300,3535090,4573440};
    local hanzi = {"一","二","三","四","五","六","七","八","九","十","十一","十二","十三","十四","十五","十六","十七","十八","十九","二十"};
    local job = player:get_job();
    local chinajob = {"物理","魔法","道术"};
    local zsdj = player:get_param(230);
    local zsdjn = zsdj + 1;
    if zsdj < 20 then
        player:echo(0,npc:GetLowGUID(),[[
#&talk_line#&
目前转生等级:<font color='#FF0000'>]]..zsdj..[[级</font>

    <font color="#FFFF00">转生需要修为/当前修为:</font><font color="]]..getcolor(player,needvalues[zsdjn])..[[">]]..needvalues[zsdjn]..[[/]]..player:get_param(231)..[[</font>
#&talk_line#&    
    ]]..hanzi[zsdjn] ..[[级转生称号:<font color="#ff0000">★</font><font color="#e36c09">转</font><font color="#f3b023">生</font><font color="#f2ca28">等</font><font color="#ffff00">级</font><font color="#a0f82e">]]..hanzi[zsdjn] ..[[</font><font color="#2be916">级</font><font color="#00b0f0">★</font>
#&talk_line#&
    ]]..hanzi[zsdjn] ..[[级转生属性:
        <font color="#C4E1FF">攻击增加:]]..minattack[zsdjn]..[[-]]..maxattack[zsdjn]..[[</font>
        <font color="#C4E1FF">血量增加:]]..lifeupper[job][zsdjn]..[[%</font>
        <font color="#C4E1FF">暴击力增加:]]..extrahurt[zsdjn]..[[</font>
        <font color="#C4E1FF">暴击率增加:]]..extrarate[zsdjn]..[[%</font>
        <font color="#C4E1FF">内力值增加:]]..addinter[job][zsdjn]..[[</font>
        <font color="#C4E1FF">内力恢复增加:]]..recoverinter[zsdjn]..[[</font>
#&talk_line#&
       <u><a href='event:M2402,11'>确认转生</a></u>        <u><a href='event:M2402,10000'>返回上页</a></u>
        ]]);
    else
        player:echo(0,npc:GetLowGUID(),[[
        #&talk_line#&
        <font color='#FF0000'>你转生已经到达顶级!</font>
        #&talk_line#&

        ]]);
    end
end

function ontalk1230_11(npc,event,player)
    local needvalues = {10000,30000,75000,150000,262500,393750,551250,716630,895780,1074940,1268430,1471370,1692080,1928970,2189380,2474000,2790680,3142300,3535090,4573440};
    local hanzi = {"一","二","三","四","五","六","七","八","九","十","十一","十二","十三","十四","十五","十六","十七","十八","十九","二十"};
    local zsdj = player:get_param(230)+1;
    local job = player:get_job();
    local buff = {
        {501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520},
        {521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540},
        {541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560},
    };
    if player:get_param(231) >= needvalues[zsdj] then
        player:set_status(buff[job][zsdj],0,100,5);
        player:set_name_pre(10,"<font color="#ff0000">★</font><font color="#e36c09">转</font><font color="#f3b023">生</font><font color="#f2ca28">等</font><font color="#ffff00">级</font><font color="#a0f82e">"..hanzi[zsdj].."</font><font color="#2be916">级</font><font color="#00b0f0">★</font>");
        player:set_param(230,zsdj);
        player:set_param(231,player:get_param(231) - needvalues[zsdj]);
    else
        player:alert(10,0,0,""..zsdj.."级转生需要转生修为:"..needvalues[zsdj].."!");
    end
    ontalk1230_1(npc,0,player);
end

 

function ontalk1230_2(npc,event,player)
    if player:get_param(348) < 9 then
        if player:get_vcoin() >= 1000000 then
            player:sub_vcoin(1000000);
            player:randomthismap(430);
            g_alert("玩家[<font color='#FF0000'>"..player:GetName().."</font>]通过转生使者进入转生岛!",2,1000,0,1);
        else
            player:alert(10,0,0,"你修仙不足9阶,需要100万元宝才能进入!");
            ontalk1230(npc,0,player,0);
        end
    else
        player:randomthismap(430);
        g_alert("玩家[<font color='#FF0000'>"..player:GetName().."</font>]通过转生使者进入转生岛!",2,1000,0,1);
    end
end

function getcolor(player,needVL)
    if player:get_param(231) >= needVL then
        return "#00FF00";
    else
        return "#FF0000";
    end
end

function ontalk1230_10000(npc,event,player)
    ontalk1230(npc,0,player,0);
end

Npc1230Funid = 
{
[1] = ontalk1230_1;
[2] = ontalk1230_2;
[11] = ontalk1230_11;
[21] = ontalk1230_21;
[22] = ontalk1230_22;
[23] = ontalk1230_23;
[221] = ontalk1230_221;
[2201] = ontalk1230_2201;
[2202] = ontalk1230_2202;
[2203] = ontalk1230_2203;
[2204] = ontalk1230_2204;
[2205] = ontalk1230_2205;
[2206] = ontalk1230_2206;
[2207] = ontalk1230_2207;
[2208] = ontalk1230_2208;
[2209] = ontalk1230_2209;
[10000] = ontalk1230_10000;
}

function CreatureNpcFun(npc,event,player,funid)
    if Npc1230Funid[funid] ~= nil then
        Npc1230Funid[funid](npc,event,player);
    end
end

RegisterUnitEvent(1230,20,"ontalk1230")
RegisterUnitEvent(1230,29,"CreatureNpcFun")