11using System ;
22using System . Collections . Generic ;
3- using System . Xml ;
43using System . Reflection ;
5- using System . Data ;
64using Terraria ;
7- using Hooks ;
85using MySql . Data . MySqlClient ;
9- using System . Threading ;
106using System . ComponentModel ;
117using C3Mod . GameTypes ;
128using System . IO ;
9+ using TerrariaApi . Server ;
1310using TShockAPI ;
1411using TShockAPI . DB ;
1512
1613namespace C3Mod
1714{
18- [ APIVersion ( 1 , 12 ) ]
15+ [ ApiVersion ( 1 , 14 ) ]
1916 public class C3Mod : TerrariaPlugin
2017 {
2118 public static C3ConfigFile C3Config { get ; set ; }
@@ -48,23 +45,23 @@ public override void Initialize()
4845 C3Tools . SetupConfig ( ) ;
4946
5047 if ( C3Config . CTFEnabled )
51- GameHooks . Update += CTF . OnUpdate ;
48+ ServerApi . Hooks . GameUpdate . Register ( this , CTF . OnUpdate ) ;
5249 if ( C3Config . DuelsEnabled )
53- GameHooks . Update += Duel . OnUpdate ;
50+ ServerApi . Hooks . GameUpdate . Register ( this , Duel . OnUpdate ) ;
5451 if ( C3Config . OneFlagEnabled )
55- GameHooks . Update += OneFlagCTF . OnUpdate ;
52+ ServerApi . Hooks . GameUpdate . Register ( this , OneFlagCTF . OnUpdate ) ;
5653 if ( C3Config . TeamDeathmatchEnabled )
57- GameHooks . Update += TDM . OnUpdate ;
54+ ServerApi . Hooks . GameUpdate . Register ( this , TDM . OnUpdate ) ;
5855 if ( C3Config . MonsterApocalypseEnabled )
59- GameHooks . Update += Apocalypse . OnUpdate ;
56+ ServerApi . Hooks . GameUpdate . Register ( this , Apocalypse . OnUpdate ) ;
6057 if ( C3Config . FreeForAllEnabled )
61- GameHooks . Update += FFA . OnUpdate ;
58+ ServerApi . Hooks . GameUpdate . Register ( this , FFA . OnUpdate ) ;
6259
63- GameHooks . Update += OnUpdate ;
64- GameHooks . Initialize += OnInitialize ;
65- NetHooks . GreetPlayer += OnGreetPlayer ;
66- ServerHooks . Leave += OnLeave ;
67- NetHooks . GetData += GetData ;
60+ ServerApi . Hooks . GameUpdate . Register ( this , OnUpdate ) ;
61+ ServerApi . Hooks . GameInitialize . Register ( this , OnInitialize ) ;
62+ ServerApi . Hooks . NetGreetPlayer . Register ( this , OnGreetPlayer ) ;
63+ ServerApi . Hooks . ServerLeave . Register ( this , OnLeave ) ;
64+ ServerApi . Hooks . NetGetData . Register ( this , GetData ) ;
6865
6966 GetDataHandlers . InitGetDataHandler ( ) ;
7067 }
@@ -73,23 +70,24 @@ protected override void Dispose(bool disposing)
7370 {
7471 if ( disposing )
7572 {
76- if ( C3Config . CTFEnabled )
77- GameHooks . Update -= CTF . OnUpdate ;
78- if ( C3Config . DuelsEnabled )
79- GameHooks . Update -= Duel . OnUpdate ;
80- if ( C3Config . OneFlagEnabled )
81- GameHooks . Update -= OneFlagCTF . OnUpdate ;
82- if ( C3Config . TeamDeathmatchEnabled )
83- GameHooks . Update -= TDM . OnUpdate ;
84- if ( C3Config . MonsterApocalypseEnabled )
85- GameHooks . Update -= Apocalypse . OnUpdate ;
86- if ( C3Config . FreeForAllEnabled )
87- GameHooks . Update -= FFA . OnUpdate ;
88- GameHooks . Update -= OnUpdate ;
89- GameHooks . Initialize -= OnInitialize ;
90- NetHooks . GreetPlayer -= OnGreetPlayer ;
91- ServerHooks . Leave -= OnLeave ;
92- NetHooks . GetData -= GetData ;
73+ if ( C3Config . CTFEnabled )
74+ ServerApi . Hooks . GameUpdate . Deregister ( this , CTF . OnUpdate ) ;
75+ if ( C3Config . DuelsEnabled )
76+ ServerApi . Hooks . GameUpdate . Deregister ( this , Duel . OnUpdate ) ;
77+ if ( C3Config . OneFlagEnabled )
78+ ServerApi . Hooks . GameUpdate . Deregister ( this , OneFlagCTF . OnUpdate ) ;
79+ if ( C3Config . TeamDeathmatchEnabled )
80+ ServerApi . Hooks . GameUpdate . Deregister ( this , TDM . OnUpdate ) ;
81+ if ( C3Config . MonsterApocalypseEnabled )
82+ ServerApi . Hooks . GameUpdate . Deregister ( this , Apocalypse . OnUpdate ) ;
83+ if ( C3Config . FreeForAllEnabled )
84+ ServerApi . Hooks . GameUpdate . Deregister ( this , FFA . OnUpdate ) ;
85+
86+ ServerApi . Hooks . GameUpdate . Deregister ( this , OnUpdate ) ;
87+ ServerApi . Hooks . GameInitialize . Deregister ( this , OnInitialize ) ;
88+ ServerApi . Hooks . NetGreetPlayer . Deregister ( this , OnGreetPlayer ) ;
89+ ServerApi . Hooks . ServerLeave . Deregister ( this , OnLeave ) ;
90+ ServerApi . Hooks . NetGetData . Deregister ( this , GetData ) ;
9391 }
9492 base . Dispose ( disposing ) ;
9593 }
@@ -101,7 +99,7 @@ public C3Mod(Main game)
10199 Order = - 1 ;
102100 }
103101
104- internal void OnInitialize ( )
102+ internal void OnInitialize ( EventArgs args )
105103 {
106104 if ( C3Config . TeamColor1 < 1 || C3Config . TeamColor1 > 4 || C3Config . TeamColor1 == C3Config . TeamColor2 || C3Config . TeamColor2 > 4 || C3Config . TeamColor2 < 1 )
107105 throw new Exception ( "Team Colours are inccorectly set up. Check c3config.json" ) ;
@@ -443,16 +441,16 @@ internal void OnInitialize()
443441 #endregion
444442 }
445443
446- internal void OnGreetPlayer ( int who , HandledEventArgs e )
444+ internal void OnGreetPlayer ( GreetPlayerEventArgs args )
447445 {
448446 lock ( C3Players )
449- C3Players . Add ( new C3Player ( who ) ) ;
447+ C3Players . Add ( new C3Player ( args . Who ) ) ;
450448
451449 if ( C3Config . ShowWelcomeMessage )
452- TShock . Players [ who ] . SendMessage ( "This server is running C3Mod, created by Twitchy. C3Mod is now open source." , Color . Cyan ) ;
450+ TShock . Players [ args . Who ] . SendMessage ( "This server is running C3Mod, created by Twitchy. C3Mod is now open source." , Color . Cyan ) ;
453451 }
454452 //Converted v2.2
455- internal void OnUpdate ( )
453+ internal void OnUpdate ( EventArgs args )
456454 {
457455 if ( C3Config . C3TeamsLocked )
458456 {
@@ -475,13 +473,13 @@ internal void OnUpdate()
475473 }
476474 }
477475
478- internal void OnLeave ( int ply )
476+ internal void OnLeave ( LeaveEventArgs args )
479477 {
480478 lock ( C3Mod . C3Players )
481479 {
482480 for ( int i = 0 ; i < C3Mod . C3Players . Count ; i ++ )
483481 {
484- if ( C3Mod . C3Players [ i ] . Index . ToString ( ) == ply . ToString ( ) )
482+ if ( C3Mod . C3Players [ i ] . Index == args . Who )
485483 {
486484 C3Mod . C3Players . RemoveAt ( i ) ;
487485 break ;
0 commit comments