Claim Reward GW NPC

12/29/2009 04:17 BALTA00#1
Hello, Equalizer92 make an NPC, for claim Reward after to win GW, he do this for 5165 Source, I look some error and could fix this, now the problem is, people who win the GW can claim Reward a lots of time, how can to do for can claim Reward only a time?

Please help me, and thank to all who try help me!

Here the codec:

PHP Code:
#region GW Winner NPC
                            
case 145006:
                                
                                    if (
Control == 0)
                                    {
                                        
GC.AddSend(Packets.NPCSay("Hello you must be the Guild Leader Or DeputyLeader of the winning Guild, Congratulations on Winning now i am sure you are looking for your reward!"));
                                        
GC.AddSend(Packets.NPCSay("Take Your Reward If You Win Guild War"));
                                        
GC.AddSend(Packets.NPCLink("Iam GuildLeader And My guild won give me my reward please", 1));
                                        
GC.AddSend(Packets.NPCLink("Iam DeputyLeader And My guild won give me my reward please", 2));
                                        
GC.AddSend(Packets.NPCLink("Thats cool", 255));
                                        
GC.AddSend(Packets.NPCSetFace(30));
                                        
GC.AddSend(Packets.NPCFinish());
                                    }
                                    else if (
Control == 1)
                                    {
                                        if (
GC.MyChar.MyGuild == Features.GuildWars.LastWinner &&(GC.MyChar.GuildRank == NewestCOServer.Features.GuildRank.GuildLeader))
                                        {
                                            
GC.AddSend(Packets.NPCLink("Claimed 3k cps from GuildWar", 4));
                                            
GC.AddSend(Packets.NPCLink("Claimed TopGuildLeadEr from TheGuildWar", 5));
                                            
GC.AddSend(Packets.NPCLink("Thanks!", 255));
                                            
GC.AddSend(Packets.NPCSetFace(10));
                                            
GC.AddSend(Packets.NPCFinish());
                                        }
                                    }
                                if (
Control == 4)
                                {
                                    
GC.MyChar.CPs += 3000;
 
GC.Message (2005, GC.MyChar.Name + "Has won 3k cps Congratulations");
                                }
                                if (
Control == 5)
                                {
                                    
GC.MyChar.StatEff.Add(StatusEffectEn.TopGuildLeader);
                                    
GC.Message(2005, GC.MyChar.Name + "Has won the TopGuildLeader Congratulations");
                                }
                                if (
Control == 2)
                                {
                                    if (
GC.MyChar.MyGuild == Features.GuildWars.LastWinner &&(GC.MyChar.GuildRank == NewestCOServer.Features.GuildRank.DeputyManager))
                                    {
                                        
GC.AddSend(Packets.NPCLink("Claimed 3k cps from GuildWar", 6));
                                        
GC.AddSend(Packets.NPCLink("Claimed TopDeputyLeader from TheGuildWar", 7));
                                        
GC.AddSend(Packets.NPCLink("Thanks!", 255));
                                        
GC.AddSend(Packets.NPCSetFace(10));
                                        
GC.AddSend(Packets.NPCFinish());
                                    }
                                }
                                if (
Control == 6)
                                {
                                    
GC.MyChar.CPs += 3000;
                                        
GC.Message (2005, GC.MyChar.Name + "Has won 3k cps Congratulations");
                                }
                                    if (
Control == 7)
                                {
                                    
GC.MyChar.StatEff.Add(StatusEffectEn.TopDeputyLeader);
                                    
GC.Message(2005, GC.MyChar.Name + "Has won the TopDeputyLeader Congratulations");
                                }
                                break; 
#endregion
12/29/2009 05:30 WHITELIONX#2
Wouldn`t you need to put something like "else if (GC.MyChar.CPs == 3000)" so that it recognises it has given the CPs?