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

烈焰私服服务端增加元宝购买称号脚本

发表时间:2017-12-15 07:02点击人气:责任编辑:admin
--1个个人变量记录称号购买情况param(349)
--变量根据自己的实际情况调整,防止冲突
----------------------------------------------
function ontalk3016(npc,event,player)
	if player:get_player_type() < 5 then
	    player:echo(0,npc:GetLowGUID(),[[


		
		
     <font color='#EE1289'>走开走开别打扰我睡觉(~﹃~)~zZ</font>


]]);
	return;
end	
	player:echo(0,npc:GetLowGUID(),[[
#&talk_line#&
                <font size="24" color="#FFFF00">称号购买</font>
#&talk_line#&
<u><a href='event:M2402,110'>[购买]</a></u> <u><a href='event:M2402,220'>[切换]</a></u>  <font color="#FF0000">姐是白富美</font> BUFF:血量+50%
<u><a href='event:M2402,111'>[购买]</a></u> <u><a href='event:M2402,221'>[切换]</a></u>  <font color="#FF0000"> 超凡入圣 </font> BUFF:暴击+5000
<u><a href='event:M2402,112'>[购买]</a></u> <u><a href='event:M2402,222'>[切换]</a></u>  <font color="#FF0000">哥是高富帅</font> BUFF:暴击+5000
<u><a href='event:M2402,113'>[购买]</a></u> <u><a href='event:M2402,223'>[切换]</a></u>  <font color="#FF0000"> 龙翔四海 </font> BUFF:血量+50%
<u><a href='event:M2402,114'>[购买]</a></u> <u><a href='event:M2402,224'>[切换]</a></u>  <font color="#FF0000"> 千秋万载 </font> BUFF:攻击+5000
<u><a href='event:M2402,115'>[购买]</a></u> <u><a href='event:M2402,225'>[切换]</a></u>  <font color="#FF0000"> 雄霸天下 </font> BUFF:防御+2000
<u><a href='event:M2402,116'>[购买]</a></u> <u><a href='event:M2402,226'>[切换]</a></u>  <font color="#FF0000"> 至尊无敌 </font> BUFF:防御+2000
<u><a href='event:M2402,117'>[购买]</a></u> <u><a href='event:M2402,227'>[切换]</a></u>  <font color="#FF0000"> 诛魔大神 </font> BUFF:暴击率+5%
<u><a href='event:M2402,118'>[购买]</a></u> <u><a href='event:M2402,228'>[切换]</a></u>  <font color="#FF0000"> 绝代芳华 </font> BUFF:攻击+5000
<u><a href='event:M2402,119'>[购买]</a></u> <u><a href='event:M2402,229'>[切换]</a></u>  <font color="#FF0000"> 神乎其技 </font> BUFF:攻击+5000
#&talk_line#&
说明:<font color="#FF69B4">兑换称号需要1000W元宝+称号兑换卷</font>
      <font color="#FF69B4">不同的称号所带的buff属性不同</font>
      <font color="#FF69B4">和其他buff属性能叠加</font>
      <font color="#FF69B4">可自由切换已购买的称号</font>
      <font color="#FF69B4">小退称号如不见,切换该称号自动获取</font>
]]);
return;
end

function ontalk3016_110(npc,event,player)
  if bitget(player:get_param(349),1) == 0 then --是否已购买过此称号
    if player:get_vcoin() >= 10000000 and player:num_item(10520,1) >= 1 then	  --购买称号所需元宝
      player:sub_vcoin(10000000);
	  player:remove_item(10520,1);
      player:set_status(520,0,100,5);    --buff属性
      player:set_param(349,bitset(player:get_param(349),1));
      player:set_name_pre(70,"");
      player:set_name_pre(71,"");
      player:set_name_pre(72,"");
      player:set_name_pre(73,"");
      player:set_name_pre(74,"");
      player:set_name_pre(75,"");
      player:set_name_pre(76,"");
      player:set_name_pre(77,"");
      player:set_name_pre(78,"");
      player:set_name_pre(79,"");
      player:set_name_pre(72,"1");
      player:alert(110,0,0,"恭喜购买成功");
    else
      player:alert(110,0,0,"元宝不够,或没有称号兑换卷,无法购买");
    end
  else
    player:alert(110,0,0,"你已购买过,无需再次购买");
  end
  ontalk3016(npc,0,player,0);
end

function ontalk3016_111(npc,event,player)
  if bitget(player:get_param(349),2) == 0 then --是否已购买过此称号
    if player:get_vcoin() >= 10000000 and player:num_item(10520,1) >= 1 then	  --购买称号所需元宝
      player:sub_vcoin(10000000);
	  player:remove_item(10520,1);
      player:set_status(521,0,100,5);    --buff属性
      player:set_param(349,bitset(player:get_param(349),2));
      player:set_name_pre(70,"");
      player:set_name_pre(71,"");
      player:set_name_pre(72,"");
      player:set_name_pre(73,"");
      player:set_name_pre(74,"");
      player:set_name_pre(75,"");
      player:set_name_pre(76,"");
      player:set_name_pre(77,"");
      player:set_name_pre(78,"");
      player:set_name_pre(79,"");
      player:set_name_pre(70,"1");
      player:alert(110,0,0,"恭喜购买成功");
    else
      player:alert(110,0,0,"元宝不够,无法购买");
    end
  else
    player:alert(110,0,0,"你已购买过,无需再次购买");
  end
  ontalk3016(npc,0,player,0);
end

function ontalk3016_112(npc,event,player)
  if bitget(player:get_param(349),3) == 0 then --是否已购买过此称号
    if player:get_vcoin() >= 10000000 and player:num_item(10520,1) >= 1 then	  --购买称号所需元宝
      player:sub_vcoin(10000000);
	  player:remove_item(10520,1);
      player:set_status(522,0,100,5);    --buff属性
      player:set_param(349,bitset(player:get_param(349),3));
      player:set_name_pre(70,"");
      player:set_name_pre(71,"");
      player:set_name_pre(72,"");
      player:set_name_pre(73,"");
      player:set_name_pre(74,"");
      player:set_name_pre(75,"");
      player:set_name_pre(76,"");
      player:set_name_pre(77,"");
      player:set_name_pre(78,"");
      player:set_name_pre(79,"");
      player:set_name_pre(71,"1");
      player:alert(110,0,0,"恭喜购买成功");
    else
      player:alert(110,0,0,"元宝不够,无法购买");
    end
  else
    player:alert(110,0,0,"你已购买过,无需再次购买");
  end
  ontalk3016(npc,0,player,0);
end

function ontalk3016_113(npc,event,player)
  if bitget(player:get_param(349),4) == 0 then --是否已购买过此称号
    if player:get_vcoin() >= 10000000 and player:num_item(10520,1) >= 1 then	  --购买称号所需元宝
      player:sub_vcoin(10000000);
	  player:remove_item(10520,1);
      player:set_status(523,0,100,5);    --buff属性
      player:set_param(349,bitset(player:get_param(349),4));
      player:set_name_pre(70,"");
      player:set_name_pre(71,"");
      player:set_name_pre(72,"");
      player:set_name_pre(73,"");
      player:set_name_pre(74,"");
      player:set_name_pre(75,"");
      player:set_name_pre(76,"");
      player:set_name_pre(77,"");
      player:set_name_pre(78,"");
      player:set_name_pre(79,"");
      player:set_name_pre(73,"1");
      player:alert(110,0,0,"恭喜购买成功");
    else
      player:alert(110,0,0,"元宝不够,无法购买");
    end
  else
    player:alert(110,0,0,"你已购买过,无需再次购买");
  end
  ontalk3016(npc,0,player,0);
end

function ontalk3016_114(npc,event,player)
  if bitget(player:get_param(349),5) == 0 then --是否已购买过此称号
    if player:get_vcoin() >= 10000000 and player:num_item(10520,1) >= 1 then	  --购买称号所需元宝
      player:sub_vcoin(10000000);
	  player:remove_item(10520,1);
      player:set_status(524,0,100,5);    --buff属性
      player:set_param(349,bitset(player:get_param(349),5));
      player:set_name_pre(70,"");
      player:set_name_pre(71,"");
      player:set_name_pre(72,"");
      player:set_name_pre(73,"");
      player:set_name_pre(74,"");
      player:set_name_pre(75,"");
      player:set_name_pre(76,"");
      player:set_name_pre(77,"");
      player:set_name_pre(78,"");
      player:set_name_pre(79,"");
      player:set_name_pre(74,"1");
      player:alert(110,0,0,"恭喜购买成功");
    else
      player:alert(110,0,0,"元宝不够,无法购买");
    end
  else
    player:alert(110,0,0,"你已购买过,无需再次购买");
  end
  ontalk3016(npc,0,player,0);
end

function ontalk3016_115(npc,event,player)
  if bitget(player:get_param(349),6) == 0 then --是否已购买过此称号
    if player:get_vcoin() >= 10000000 and player:num_item(10520,1) >= 1 then	  --购买称号所需元宝
      player:sub_vcoin(10000000);
	  player:remove_item(10520,1);
      player:set_status(525,0,100,5);    --buff属性
      player:set_param(349,bitset(player:get_param(349),6));
      player:set_name_pre(70,"");
      player:set_name_pre(71,"");
      player:set_name_pre(72,"");
      player:set_name_pre(73,"");
      player:set_name_pre(74,"");
      player:set_name_pre(75,"");
      player:set_name_pre(76,"");
      player:set_name_pre(77,"");
      player:set_name_pre(78,"");
      player:set_name_pre(79,"");
      player:set_name_pre(75,"1");
      player:alert(110,0,0,"恭喜购买成功");
    else
      player:alert(110,0,0,"元宝不够,无法购买");
    end
  else
    player:alert(110,0,0,"你已购买过,无需再次购买");
  end
  ontalk3016(npc,0,player,0);
end

function ontalk3016_116(npc,event,player)
  if bitget(player:get_param(349),7) == 0 then --是否已购买过此称号
    if player:get_vcoin() >= 10000000 and player:num_item(10520,1) >= 1 then	  --购买称号所需元宝
      player:sub_vcoin(10000000);
	  player:remove_item(10520,1);
      player:set_status(526,0,100,5);    --buff属性
      player:set_param(349,bitset(player:get_param(349),7));
      player:set_name_pre(70,"");
      player:set_name_pre(71,"");
      player:set_name_pre(72,"");
      player:set_name_pre(73,"");
      player:set_name_pre(74,"");
      player:set_name_pre(75,"");
      player:set_name_pre(76,"");
      player:set_name_pre(77,"");
      player:set_name_pre(78,"");
      player:set_name_pre(79,"");
      player:set_name_pre(76,"1");
      player:alert(110,0,0,"恭喜购买成功");
    else
      player:alert(110,0,0,"元宝不够,无法购买");
    end
  else
    player:alert(110,0,0,"你已购买过,无需再次购买");
  end
  ontalk3016(npc,0,player,0);
end

function ontalk3016_117(npc,event,player)
  if bitget(player:get_param(349),8) == 0 then --是否已购买过此称号
    if player:get_vcoin() >= 10000000 and player:num_item(10520,1) >= 1 then	  --购买称号所需元宝
      player:sub_vcoin(10000000);
	  player:remove_item(10520,1);
      player:set_status(527,0,100,5);    --buff属性
      player:set_param(349,bitset(player:get_param(349),8));
      player:set_name_pre(70,"");
      player:set_name_pre(71,"");
      player:set_name_pre(72,"");
      player:set_name_pre(73,"");
      player:set_name_pre(74,"");
      player:set_name_pre(75,"");
      player:set_name_pre(76,"");
      player:set_name_pre(77,"");
      player:set_name_pre(78,"");
      player:set_name_pre(79,"");
      player:set_name_pre(77,"1");
      player:alert(110,0,0,"恭喜购买成功");
    else
      player:alert(110,0,0,"元宝不够,无法购买");
    end
  else
    player:alert(110,0,0,"你已购买过,无需再次购买");
  end
  ontalk3016(npc,0,player,0);
end

function ontalk3016_118(npc,event,player)
  if bitget(player:get_param(349),9) == 0 then --是否已购买过此称号
    if player:get_vcoin() >= 10000000 and player:num_item(10520,1) >= 1 then	  --购买称号所需元宝
      player:sub_vcoin(10000000);
	  player:remove_item(10520,1);
      player:set_status(528,0,100,5);    --buff属性
      player:set_param(349,bitset(player:get_param(349),9));
      player:set_name_pre(70,"");
      player:set_name_pre(71,"");
      player:set_name_pre(72,"");
      player:set_name_pre(73,"");
      player:set_name_pre(74,"");
      player:set_name_pre(75,"");
      player:set_name_pre(76,"");
      player:set_name_pre(77,"");
      player:set_name_pre(78,"");
      player:set_name_pre(79,"");
      player:set_name_pre(78,"1");
      player:alert(110,0,0,"恭喜购买成功");
    else
      player:alert(110,0,0,"元宝不够,无法购买");
    end
  else
    player:alert(110,0,0,"你已购买过,无需再次购买");
  end
  ontalk3016(npc,0,player,0);
end

function ontalk3016_119(npc,event,player)
  if bitget(player:get_param(349),10) == 0 then --是否已购买过此称号
    if player:get_vcoin() >= 10000000 and player:num_item(10520,1) >= 1 then	  --购买称号所需元宝
      player:sub_vcoin(10000000);
	  player:remove_item(10520,1);
      player:set_status(529,0,100,5);    --buff属性
      player:set_param(349,bitset(player:get_param(349),10));
      player:set_name_pre(70,"");
      player:set_name_pre(71,"");
      player:set_name_pre(72,"");
      player:set_name_pre(73,"");
      player:set_name_pre(74,"");
      player:set_name_pre(75,"");
      player:set_name_pre(76,"");
      player:set_name_pre(77,"");
      player:set_name_pre(78,"");
      player:set_name_pre(79,"");
      player:set_name_pre(79,"1");
      player:alert(110,0,0,"恭喜购买成功");
    else
      player:alert(110,0,0,"元宝不够,无法购买");
    end
  else
    player:alert(110,0,0,"你已购买过,无需再次购买");
  end
  ontalk3016(npc,0,player,0);
end

function ontalk3016_220(npc,event,player)
  if player:get_vcoin() >= 10000 then  --切换称号所需元宝
    if bitget(player:get_param(349),1) == 1 then
	player:set_status(520,0,100,5);    --buff属性
      player:set_name_pre(70,"");
      player:set_name_pre(71,"");
      player:set_name_pre(72,"");
      player:set_name_pre(73,"");
      player:set_name_pre(74,"");
      player:set_name_pre(75,"");
      player:set_name_pre(76,"");
      player:set_name_pre(77,"");
      player:set_name_pre(78,"");
      player:set_name_pre(79,"");
      player:set_name_pre(72,"1");
      player:sub_vcoin(10000);
      player:alert(110,0,0,"恭喜切换成功");
    else
      player:alert(110,0,0,"你未购买此称号");
    end
  else
    player:alert(110,0,0,"元宝不足无法切换");
  end
  ontalk3016(npc,0,player,0);
end

function ontalk3016_221(npc,event,player)
  if player:get_vcoin() >= 10000 then  --切换称号所需元宝
    if bitget(player:get_param(349),2) == 1 then
	  player:set_status(521,0,100,5);    --buff属性
      player:set_name_pre(70,"");
      player:set_name_pre(71,"");
      player:set_name_pre(72,"");
      player:set_name_pre(73,"");
      player:set_name_pre(74,"");
      player:set_name_pre(75,"");
      player:set_name_pre(76,"");
      player:set_name_pre(77,"");
      player:set_name_pre(78,"");
      player:set_name_pre(79,"");
      player:set_name_pre(70,"1");
      player:sub_vcoin(10000);
      player:alert(110,0,0,"恭喜切换成功");
    else
      player:alert(110,0,0,"你未购买此称号");
    end
  else
    player:alert(110,0,0,"元宝不足无法切换");
  end
  ontalk3016(npc,0,player,0);
end

function ontalk3016_222(npc,event,player)
  if player:get_vcoin() >= 10000 then  --切换称号所需元宝
    if bitget(player:get_param(349),3) == 1 then
	  player:set_status(522,0,100,5);    --buff属性
      player:set_name_pre(70,"");
      player:set_name_pre(71,"");
      player:set_name_pre(72,"");
      player:set_name_pre(73,"");
      player:set_name_pre(74,"");
      player:set_name_pre(75,"");
      player:set_name_pre(76,"");
      player:set_name_pre(77,"");
      player:set_name_pre(78,"");
      player:set_name_pre(79,"");
      player:set_name_pre(71,"1");
      player:sub_vcoin(10000);
      player:alert(110,0,0,"恭喜切换成功");
    else
      player:alert(110,0,0,"你未购买此称号");
    end
  else
    player:alert(110,0,0,"元宝不足无法切换");
  end
  ontalk3016(npc,0,player,0);
end

function ontalk3016_223(npc,event,player)
  if player:get_vcoin() >= 10000 then  --切换称号所需元宝
    if bitget(player:get_param(349),4) == 1 then
	  player:set_status(523,0,100,5);    --buff属性
      player:set_name_pre(70,"");
      player:set_name_pre(71,"");
      player:set_name_pre(72,"");
      player:set_name_pre(73,"");
      player:set_name_pre(74,"");
      player:set_name_pre(75,"");
      player:set_name_pre(76,"");
      player:set_name_pre(77,"");
      player:set_name_pre(78,"");
      player:set_name_pre(79,"");
      player:set_name_pre(73,"1");
      player:sub_vcoin(10000);
      player:alert(110,0,0,"恭喜切换成功");
    else
      player:alert(110,0,0,"你未购买此称号");
    end
  else
    player:alert(110,0,0,"元宝不足无法切换");
  end
  ontalk3016(npc,0,player,0);
end

function ontalk3016_224(npc,event,player)
  if player:get_vcoin() >= 10000 then  --切换称号所需元宝
    if bitget(player:get_param(349),5) == 1 then
	  player:set_status(524,0,100,5);    --buff属性
      player:set_name_pre(70,"");
      player:set_name_pre(71,"");
      player:set_name_pre(72,"");
      player:set_name_pre(73,"");
      player:set_name_pre(74,"");
      player:set_name_pre(75,"");
      player:set_name_pre(76,"");
      player:set_name_pre(77,"");
      player:set_name_pre(78,"");
      player:set_name_pre(79,"");
      player:set_name_pre(74,"1");
      player:sub_vcoin(10000);
      player:alert(110,0,0,"恭喜切换成功");
    else
      player:alert(110,0,0,"你未购买此称号");
    end
  else
    player:alert(110,0,0,"元宝不足无法切换");
  end
  ontalk3016(npc,0,player,0);
end

function ontalk3016_225(npc,event,player)
  if player:get_vcoin() >= 10000 then  --切换称号所需元宝
    if bitget(player:get_param(349),6) == 1 then
	  player:set_status(525,0,100,5);    --buff属性
      player:set_name_pre(70,"");
      player:set_name_pre(71,"");
      player:set_name_pre(72,"");
      player:set_name_pre(73,"");
      player:set_name_pre(74,"");
      player:set_name_pre(75,"");
      player:set_name_pre(76,"");
      player:set_name_pre(77,"");
      player:set_name_pre(78,"");
      player:set_name_pre(79,"");
      player:set_name_pre(75,"1");
      player:sub_vcoin(10000);
      player:alert(110,0,0,"恭喜切换成功");
    else
      player:alert(110,0,0,"你未购买此称号");
    end
  else
    player:alert(110,0,0,"元宝不足无法切换");
  end
  ontalk3016(npc,0,player,0);
end

function ontalk3016_226(npc,event,player)
  if player:get_vcoin() >= 10000 then  --切换称号所需元宝
    if bitget(player:get_param(349),7) == 1 then
	  player:set_status(526,0,100,5);    --buff属性
      player:set_name_pre(70,"");
      player:set_name_pre(71,"");
      player:set_name_pre(72,"");
      player:set_name_pre(73,"");
      player:set_name_pre(74,"");
      player:set_name_pre(75,"");
      player:set_name_pre(76,"");
      player:set_name_pre(77,"");
      player:set_name_pre(78,"");
      player:set_name_pre(79,"");
      player:set_name_pre(76,"1");
      player:sub_vcoin(10000);
      player:alert(110,0,0,"恭喜切换成功");
    else
      player:alert(110,0,0,"你未购买此称号");
    end
  else
    player:alert(110,0,0,"元宝不足无法切换");
  end
  ontalk3016(npc,0,player,0);
end

function ontalk3016_227(npc,event,player)
  if player:get_vcoin() >= 10000 then  --切换称号所需元宝
    if bitget(player:get_param(349),8) == 1 then
	  player:set_status(527,0,100,5);    --buff属性
      player:set_name_pre(70,"");
      player:set_name_pre(71,"");
      player:set_name_pre(72,"");
      player:set_name_pre(73,"");
      player:set_name_pre(74,"");
      player:set_name_pre(75,"");
      player:set_name_pre(76,"");
      player:set_name_pre(77,"");
      player:set_name_pre(78,"");
      player:set_name_pre(79,"");
      player:set_name_pre(77,"1");
      player:sub_vcoin(10000);
      player:alert(110,0,0,"恭喜切换成功");
    else
      player:alert(110,0,0,"你未购买此称号");
    end
  else
    player:alert(110,0,0,"元宝不足无法切换");
  end
  ontalk3016(npc,0,player,0);
end

function ontalk3016_228(npc,event,player)
  if player:get_vcoin() >= 10000 then  --切换称号所需元宝
    if bitget(player:get_param(349),9) == 1 then
	  player:set_status(528,0,100,5);    --buff属性
      player:set_name_pre(70,"");
      player:set_name_pre(71,"");
      player:set_name_pre(72,"");
      player:set_name_pre(73,"");
      player:set_name_pre(74,"");
      player:set_name_pre(75,"");
      player:set_name_pre(76,"");
      player:set_name_pre(77,"");
      player:set_name_pre(78,"");
      player:set_name_pre(79,"");
      player:set_name_pre(78,"1");
      player:sub_vcoin(10000);
      player:alert(110,0,0,"恭喜切换成功");
    else
      player:alert(110,0,0,"你未购买此称号");
    end
  else
    player:alert(110,0,0,"元宝不足无法切换");
  end
  ontalk3016(npc,0,player,0);
end

function ontalk3016_229(npc,event,player)
  if player:get_vcoin() >= 10000 then  --切换称号所需元宝
    if bitget(player:get_param(349),10) == 1 then
	  player:set_status(529,0,100,5);    --buff属性
      player:set_name_pre(70,"");
      player:set_name_pre(71,"");
      player:set_name_pre(72,"");
      player:set_name_pre(73,"");
      player:set_name_pre(74,"");
      player:set_name_pre(75,"");
      player:set_name_pre(76,"");
      player:set_name_pre(77,"");
      player:set_name_pre(78,"");
      player:set_name_pre(79,"");
      player:set_name_pre(79,"1");
      player:sub_vcoin(10000);
      player:alert(110,0,0,"恭喜切换成功");
    else
      player:alert(110,0,0,"你未购买此称号");
    end
  else
    player:alert(110,0,0,"元宝不足无法切换");
  end
  ontalk3016(npc,0,player,0);
end


Npc3016Funid = 
{
[110] = ontalk3016_110;
[111] = ontalk3016_111;
[112] = ontalk3016_112;
[113] = ontalk3016_113;
[114] = ontalk3016_114;
[115] = ontalk3016_115;
[116] = ontalk3016_116;
[117] = ontalk3016_117;
[118] = ontalk3016_118;
[119] = ontalk3016_119;
[220] = ontalk3016_220;
[221] = ontalk3016_221;
[222] = ontalk3016_222;
[223] = ontalk3016_223;
[224] = ontalk3016_224;
[225] = ontalk3016_225;
[226] = ontalk3016_226;
[227] = ontalk3016_227;
[228] = ontalk3016_228;
[229] = ontalk3016_229;
}

function CreatureNpcFun(npc,event,player,funid)
	if funid == 10000 then
		ontalk3016(npc,0,player,0);
		return;
	end
	if Npc3016Funid[funid] ~= nil then
		Npc3016Funid[funid](npc,event,player);
	end
end

RegisterUnitEvent(3016,20,"ontalk3016")
RegisterUnitEvent(3016,29,"CreatureNpcFun")