package com.if3games.chessonline.data;
import java.util.HashMap;
import java.util.Map;
public class ConstantsData {
// For Markets Rate, URL, About....
public static String PACKAGE_NAME = "com.if3games.chessonline";
public static enum MARKET { PLAY, AMAZON }
public static MARKET mMARKET = MARKET.PLAY; // This set market type
public static String MARKET_TYPE_URL_STR = mMARKET == MARKET.PLAY ? "market://details?id=" : "http://www.amazon.com/gp/mas/dl/android?p=";
public static String MARKET_NAME_STR = mMARKET == MARKET.PLAY ? "Google Play" : "Amazon App Store";
public static String MOREGAMES_URI = "https://play.google.com/store/apps/developer?id=tiny4games";
public static String MARKET_URL_HTTP = "https://play.google.com/store/apps/details?id=" + PACKAGE_NAME;
public final static String CH_KEY_RATIND = "rating";
public final static String CH_KEY_PLAYED = "played";
public final static String CH_KEY_WON = "won";
public final static String CH_KEY_LOST = "lost";
public final static String CH_KEY_DRAW = "draw";
public final static int GAME_WON = 1;
public final static int GAME_LOSS = -1;
public final static int GAME_DRAW = 0;
public final static int GAME_VARIANT_LONG = 10;
public final static int GAME_VARIANT_1MIN = 11;
public final static int GAME_VARIANT_2MIN = 12;
public final static int GAME_VARIANT_3MIN = 13;
public final static int GAME_DURATION_1MIN = 60;
public final static int GAME_DURATION_2MIN = 120;
public final static int GAME_DURATION_3MIN = 180;
/** Default ELO starting rating for new users. */
public static final int DEFAULT_ELO_START_RATING = 1200;
/** Default ELO, K is the development coefficient. (FIDE System)
K = 30 for a player new to the rating list until he has completed events with a total of at least 30 games.
K = 20 for RAPID and BLITZ ratings all players.
K = 15 as long as a player`s rating remains under 2400.
K = 10 once a player`s published rating has reached 2400, and he has also completed events with a total of at least 30 games. Thereafter it remains permanently at 10.
*/
public static final double ELO_K_FACTOR_NEWBIE = 30.0;
public static final double ELO_K_FACTOR_BLITZ = 20.0;
public static final double ELO_K_FACTOR_DOWN2400 = 15.0;
public static final double ELO_K_FACTOR_UP2400 = 10.0;
/** Default ELO k factor. */
public static final double DEFAULT_ELO_K_FACTOR = 30.0;
public final static int[][] ACHIEVEMENT_RANGE = {
{0, 1200},
{1200, 1400},
{1400, 1600},
{1600, 1800},
{1800, 2000},
{2000, 2200},
{2200, 2400},
{2400, 2500},
{2500, 2800},
{2600, 8000},
{2700, 8000},
{2800, 8000}
};
public static final Map<String, Integer> initMap;
static
{
initMap = new HashMap<String, Integer>();
initMap.put(CH_KEY_RATIND, DEFAULT_ELO_START_RATING);
initMap.put(CH_KEY_PLAYED, 0);
initMap.put(CH_KEY_WON, 0);
initMap.put(CH_KEY_LOST, 0);
initMap.put(CH_KEY_DRAW, 0);
}
public static final String SERIAL_VERSION = "9.0";
public static int GMS_LEVELNUMBER = -1;
public final static String COUNTDOWN_TIMER_TEXT_360 = "6:00";
public final static String COUNTDOWN_TIMER_TEXT_340 = "5:";
public final static String COUNTDOWN_TIMER_TEXT_310 = "5:0";
public final static String COUNTDOWN_TIMER_TEXT_300 = "5:00";
public final static String COUNTDOWN_TIMER_TEXT_280 = "4:";
public final static String COUNTDOWN_TIMER_TEXT_250 = "4:0";
public final static String COUNTDOWN_TIMER_TEXT_240 = "4:00";
public final static String COUNTDOWN_TIMER_TEXT_220 = "3:";
public final static String COUNTDOWN_TIMER_TEXT_190 = "3:0";
public final static String COUNTDOWN_TIMER_TEXT_180 = "3:00";
public final static String COUNTDOWN_TIMER_TEXT_160 = "2:";
public final static String COUNTDOWN_TIMER_TEXT_130 = "2:0";
public final static String COUNTDOWN_TIMER_TEXT_120 = "2:00";
public final static String COUNTDOWN_TIMER_TEXT_100 = "1:";
public final static String COUNTDOWN_TIMER_TEXT_70 = "1:0";
public final static String COUNTDOWN_TIMER_TEXT_60 = "0:";
public final static String COUNTDOWN_TIMER_TEXT_9 = "0:0";
// ads
// AdMob Interstitial
public static String INTERSTITIAL_APPID = "a152e1fd934354e";
// AdMob ADVIEW
public static String ADVIEW_APPID = "a15301a48f1f9da";
// ads
// Charboost
public static String CHARBOOST_APPID = "52e1fbabf8975c225e939e3e";
public static String CHARBOOST_APPSIGH = "c5e24175b3772f360f344ec322b4bcb08565f898";
// No Lives
public final static int COUNTDOWN_TIME_LIMIT = 11 * 1000;
public final static String COUNTDOWN_TIMER_TEXT_10 = "00:";
public final static String COUNTDOWN_TIMER_TEXT_1 = "00:0";
// Animations
public final static int AnimDurationTopBar = 250;
public final static int AnimDurationButtons = 300;
public final static int AnimDurationCongratsStatus = 400;
public final static int AnimDurationCongratsGuessedTitle = 270;
public final static int AnimDurationCongratsGuessedPuzzleNum = 380;
public final static int AnimDurationCongratsRateAppBtn = 450;
public final static int AnimDurationCongratsContinueBtn = 400;
public final static int AnimDurationHelpButton = 450;
public final static int AnimDurationLives = 400;
public final static int AnimDurationSolution = 250;
public final static int AnimDurationFadeOutSolution = 250;
public final static int AnimDurationWordCount = 550;
public final static int AnimDurationLongWord = 700;
// No Lives
public final static int AnimDurationNoLivesStatus = 400;
public final static int AnimDurationNoLivesTitle = 250;
public final static int AnimDurationNoLivesWaitTitle = 360;
public final static int AnimDurationNoLivesWaitTime = 470;
public final static int AnimDurationNoLivesPuzzleNum = 600;
public final static int AnimDurationNoLivesContinueBtn = 400;
public final static float AnimTransDownBtn = 4.0f;
public final static int TURN_TIME_WORDBUTTON = 2 * 1000;
public final static int TURN_GMS_TIME = 120 * 1000;
public static Map<String, Integer> getInitStatsMap() {
return initMap;
}
public static int getIndexFromCheckedRange(int rating) {
int index = 1;
for (int[] range : ACHIEVEMENT_RANGE) {
if(range[0] == 0) continue; // for all newbie players unlock first achive
if(rating > range[0] && rating <= range[1])
return index;
index++;
}
return 0;
}
}