Index: src/ai/api/ai_company.hpp =================================================================== --- src/ai/api/ai_company.hpp (revision 12185) +++ src/ai/api/ai_company.hpp (working copy) @@ -34,7 +34,7 @@ * @param company the company index to resolve. * @return the resolved company index. */ - CompanyIndex ResolveCompanyIndex(CompanyIndex company); + static CompanyIndex ResolveCompanyIndex(CompanyIndex company); /** * Set the name of your company. @@ -42,7 +42,7 @@ * @pre name != NULL * @return true if the name was changed. */ - bool SetCompanyName(const char *name); + static bool SetCompanyName(const char *name); /** * Get the name of the given company. @@ -51,7 +51,7 @@ * @return the name of the given company. * @note the returned company name must be free'd (C++ only). */ - char *GetCompanyName(CompanyIndex company); + static char *GetCompanyName(CompanyIndex company); /** * Set the name of your president. @@ -59,7 +59,7 @@ * @pre name != NULL * @return true if the name was changed. */ - bool SetPresidentName(const char *name); + static bool SetPresidentName(const char *name); /** * Get the name of the president of the given company. @@ -68,7 +68,7 @@ * @return the name of the president of the given company. * @note the returned president name must be free'd (C++ only). */ - char *GetPresidentName(CompanyIndex company); + static char *GetPresidentName(CompanyIndex company); /** * Gets the current value of the given company. @@ -76,7 +76,7 @@ * @pre ResolveCompanyIndex(company) != INVALID_COMPANY * @return the current value of the given company. */ - int32 GetCompanyValue(CompanyIndex company); + static int32 GetCompanyValue(CompanyIndex company); /** * Gets the bank balance. In other words, the amount of money the given company can spent. @@ -84,7 +84,7 @@ * @pre ResolveCompanyIndex(company) != INVALID_COMPANY * @return the actual bank balance. */ - int32 GetBankBalance(CompanyIndex company); + static int32 GetBankBalance(CompanyIndex company); /** * Gets the amount your company have loaned. @@ -92,7 +92,7 @@ * @post the return value is always non-negative. * @post GetLoanInterval() is always a multiplier of the return value. */ - int32 GetLoanAmount(); + static int32 GetLoanAmount(); /** * Gets the maximum amount your company can loan. @@ -100,14 +100,14 @@ * @post the return value is always non-negative. * @post GetLoanInterval() is always a multiplier of the return value. */ - int32 GetMaxLoanAmount(); + static int32 GetMaxLoanAmount(); /** * Gets the interval/loan step. * @return the loan step. * @post return value is always positive. */ - int32 GetLoanInterval(); + static int32 GetLoanInterval(); /** * Sets the amount to loan. @@ -118,7 +118,7 @@ * @pre loan - GetLoanAmount() + GetBankBalance() must be non-negative. * @return true if the loan could be set to your requested amount. */ - bool SetLoanAmount(int32 loan); + static bool SetLoanAmount(int32 loan); /** * Sets the minimum amount to loan, i.e. the given amount of loan rounded up. @@ -127,7 +127,7 @@ * @pre loan must be below GetMaxLoan(). * @return true if we could allocate a minimum of "loan" loan. */ - bool SetMinimumLoanAmount(int32 loan); + static bool SetMinimumLoanAmount(int32 loan); }; DECLARE_POSTFIX_INCREMENT(AICompany::CompanyIndex); Index: src/ai/api/ai_company.hpp.sq =================================================================== --- src/ai/api/ai_company.hpp.sq (revision 12185) +++ src/ai/api/ai_company.hpp.sq (working copy) @@ -23,20 +23,19 @@ SQAICompany.DefSQConst(engine, AICompany::MY_COMPANY, "MY_COMPANY"); SQAICompany.DefSQConst(engine, AICompany::INVALID_COMPANY, "INVALID_COMPANY"); - SQAICompany.DefSQStaticMethod(engine, &AICompany::GetClassName, "GetClassName", 1, "x"); + SQAICompany.DefSQStaticMethod(engine, &AICompany::GetClassName, "GetClassName", 1, "x"); + SQAICompany.DefSQStaticMethod(engine, &AICompany::ResolveCompanyIndex, "ResolveCompanyIndex", 2, "xi"); + SQAICompany.DefSQStaticMethod(engine, &AICompany::SetCompanyName, "SetCompanyName", 2, "xs"); + SQAICompany.DefSQStaticMethod(engine, &AICompany::GetCompanyName, "GetCompanyName", 2, "xi"); + SQAICompany.DefSQStaticMethod(engine, &AICompany::SetPresidentName, "SetPresidentName", 2, "xs"); + SQAICompany.DefSQStaticMethod(engine, &AICompany::GetPresidentName, "GetPresidentName", 2, "xi"); + SQAICompany.DefSQStaticMethod(engine, &AICompany::GetCompanyValue, "GetCompanyValue", 2, "xi"); + SQAICompany.DefSQStaticMethod(engine, &AICompany::GetBankBalance, "GetBankBalance", 2, "xi"); + SQAICompany.DefSQStaticMethod(engine, &AICompany::GetLoanAmount, "GetLoanAmount", 1, "x"); + SQAICompany.DefSQStaticMethod(engine, &AICompany::GetMaxLoanAmount, "GetMaxLoanAmount", 1, "x"); + SQAICompany.DefSQStaticMethod(engine, &AICompany::GetLoanInterval, "GetLoanInterval", 1, "x"); + SQAICompany.DefSQStaticMethod(engine, &AICompany::SetLoanAmount, "SetLoanAmount", 2, "xi"); + SQAICompany.DefSQStaticMethod(engine, &AICompany::SetMinimumLoanAmount, "SetMinimumLoanAmount", 2, "xi"); - SQAICompany.DefSQMethod(engine, &AICompany::ResolveCompanyIndex, "ResolveCompanyIndex", 2, "xi"); - SQAICompany.DefSQMethod(engine, &AICompany::SetCompanyName, "SetCompanyName", 2, "xs"); - SQAICompany.DefSQMethod(engine, &AICompany::GetCompanyName, "GetCompanyName", 2, "xi"); - SQAICompany.DefSQMethod(engine, &AICompany::SetPresidentName, "SetPresidentName", 2, "xs"); - SQAICompany.DefSQMethod(engine, &AICompany::GetPresidentName, "GetPresidentName", 2, "xi"); - SQAICompany.DefSQMethod(engine, &AICompany::GetCompanyValue, "GetCompanyValue", 2, "xi"); - SQAICompany.DefSQMethod(engine, &AICompany::GetBankBalance, "GetBankBalance", 2, "xi"); - SQAICompany.DefSQMethod(engine, &AICompany::GetLoanAmount, "GetLoanAmount", 1, "x"); - SQAICompany.DefSQMethod(engine, &AICompany::GetMaxLoanAmount, "GetMaxLoanAmount", 1, "x"); - SQAICompany.DefSQMethod(engine, &AICompany::GetLoanInterval, "GetLoanInterval", 1, "x"); - SQAICompany.DefSQMethod(engine, &AICompany::SetLoanAmount, "SetLoanAmount", 2, "xi"); - SQAICompany.DefSQMethod(engine, &AICompany::SetMinimumLoanAmount, "SetMinimumLoanAmount", 2, "xi"); - SQAICompany.PostRegister(engine); } Index: src/ai/api/ai_company.cpp =================================================================== --- src/ai/api/ai_company.cpp (revision 12185) +++ src/ai/api/ai_company.cpp (working copy) @@ -24,12 +24,12 @@ if (name == NULL) return false; _cmd_text = name; - return this->DoCommand(0, 0, 0, CMD_CHANGE_COMPANY_NAME); + return DoCommand(0, 0, 0, CMD_CHANGE_COMPANY_NAME); } char *AICompany::GetCompanyName(AICompany::CompanyIndex company) { - company = this->ResolveCompanyIndex(company); + company = ResolveCompanyIndex(company); if (company == INVALID_COMPANY) return NULL; static const int len = 64; @@ -45,12 +45,12 @@ if (name == NULL) return false; _cmd_text = name; - return this->DoCommand(0, 0, 0, CMD_CHANGE_PRESIDENT_NAME); + return DoCommand(0, 0, 0, CMD_CHANGE_PRESIDENT_NAME); } char *AICompany::GetPresidentName(AICompany::CompanyIndex company) { - company = this->ResolveCompanyIndex(company); + company = ResolveCompanyIndex(company); static const int len = 64; char *president_name = MallocT(len); @@ -66,7 +66,7 @@ int32 AICompany::GetCompanyValue(AICompany::CompanyIndex company) { - company = this->ResolveCompanyIndex(company); + company = ResolveCompanyIndex(company); if (company == INVALID_COMPANY) return 0; return GetPlayer((PlayerID)company)->cur_economy.company_value; @@ -74,7 +74,7 @@ int32 AICompany::GetBankBalance(AICompany::CompanyIndex company) { - company = this->ResolveCompanyIndex(company); + company = ResolveCompanyIndex(company); if (company == INVALID_COMPANY) return 0; return ClampToI32(GetPlayer((PlayerID)company)->player_money); @@ -98,29 +98,29 @@ bool AICompany::SetLoanAmount(int32 loan) { if (loan < 0 || - (loan % this->GetLoanInterval()) != 0 || - loan > this->GetMaxLoanAmount() || - (loan - this->GetLoanAmount() + this->GetBankBalance(MY_COMPANY)) < 0) { + (loan % GetLoanInterval()) != 0 || + loan > GetMaxLoanAmount() || + (loan - GetLoanAmount() + GetBankBalance(MY_COMPANY)) < 0) { return false; } - if (loan == this->GetLoanAmount()) return true; + if (loan == GetLoanAmount()) return true; - return this->DoCommand(0, - abs(loan - this->GetLoanAmount()), 2, - (loan > this->GetLoanAmount()) ? CMD_INCREASE_LOAN : CMD_DECREASE_LOAN); + return DoCommand(0, + abs(loan - GetLoanAmount()), 2, + (loan > GetLoanAmount()) ? CMD_INCREASE_LOAN : CMD_DECREASE_LOAN); } bool AICompany::SetMinimumLoanAmount(int32 loan) { if (loan < 0) return false; - int32 over_interval = loan % this->GetLoanInterval(); - if (over_interval != 0) loan += this->GetLoanInterval() - over_interval; + int32 over_interval = loan % GetLoanInterval(); + if (over_interval != 0) loan += GetLoanInterval() - over_interval; - if (loan > this->GetMaxLoanAmount()) return false; + if (loan > GetMaxLoanAmount()) return false; - this->SetLoanAmount(loan); + SetLoanAmount(loan); - return this->GetLoanAmount() == loan; + return GetLoanAmount() == loan; }