File: WelcomeMessages.java

package info (click to toggle)
spring 104.0%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 47,512 kB
  • sloc: cpp: 391,093; ansic: 79,943; python: 12,356; java: 12,201; awk: 5,889; sh: 1,826; xml: 655; makefile: 486; perl: 405; php: 211; objc: 194; sed: 2
file content (45 lines) | stat: -rw-r--r-- 1,383 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
package hughai.ui;

import java.util.*;

import hughai.*;
import hughai.utils.*;

public class WelcomeMessages {
   PlayerObjects playerObjects;
   
   Config config;
   
   List<String> welcomeMessages;
   int welcomeMessageIntervalFrames;
   
   int initialFrameNumber = -1;  // so we can test without reloading Spring...
   
   public WelcomeMessages( PlayerObjects playerObjects ) {
      this.playerObjects = playerObjects;
      config = playerObjects.getConfig();
      
      welcomeMessages = config.getWelcomeMessages();
      welcomeMessageIntervalFrames = config.getWelcomeMessageSecondsInterval() * 30;
      
      //initialFrameNumber = playerObjects.getFrameController().getFrame();
      
      playerObjects.getCSAI().registerGameListener( new GameListener() );
   }
   
   class GameListener extends GameAdapter {
      @Override
      public void Tick( int frame ) {
         if( initialFrameNumber == -1 ) {
            initialFrameNumber = frame;
         }
         frame = frame - initialFrameNumber;
         if( ( frame % welcomeMessageIntervalFrames ) == 0 ) {
            int messageindex = ( frame / welcomeMessageIntervalFrames );
            if( ( messageindex >= 0 ) && ( messageindex < welcomeMessages.size() ) ) {
               playerObjects.getCSAI().sendTextMessage( welcomeMessages.get( messageindex ) );
            }
         }
      }
   }
}