本文整理汇总了C++中cMovieStudioManager::AddScene方法的典型用法代码示例。如果您正苦于以下问题:C++ cMovieStudioManager::AddScene方法的具体用法?C++ cMovieStudioManager::AddScene怎么用?C++ cMovieStudioManager::AddScene使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类cMovieStudioManager
的用法示例。
在下文中一共展示了cMovieStudioManager::AddScene方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: WorkFilmAnal
// `J` Job Movie Studio - Actress
bool cJobManager::WorkFilmAnal(sGirl* girl, sBrothel* brothel, bool Day0Night1, string& summary)
{
int actiontype = ACTION_WORKMOVIE;
// No film crew.. then go home // `J` this will be taken care of in building flow, leaving it in for now
if (g_Studios.GetNumGirlsOnJob(0, JOB_CAMERAMAGE, SHIFT_NIGHT) == 0 || g_Studios.GetNumGirlsOnJob(0, JOB_CRYSTALPURIFIER, SHIFT_NIGHT) == 0)
{
girl->m_Events.AddMessage("There was no crew to film the scene, so she took the day off", IMGTYPE_PROFILE, EVENT_NOWORK);
return false;
}
stringstream ss;
string girlName = girl->m_Realname;
int wages = 50;
int enjoy = 0;
int finalqual = 0;
int jobperformance = 0;
g_Girls.UnequipCombat(girl); // not for actress (yet)
ss << girlName << " worked as an actress filming anal scenes.\n\n";
int roll = g_Dice.d100();
if (roll <= 10 && (g_Girls.DisobeyCheck(girl, ACTION_WORKMOVIE, brothel) || g_Girls.DisobeyCheck(girl, ACTION_SEX, brothel)))
{
ss << "She refused to do anal on film today.\n";
girl->m_Events.AddMessage(ss.str(), IMGTYPE_PROFILE, EVENT_NOWORK);
return true;
}
else if (roll <= 10) { enjoy -= g_Dice % 3 + 1; ss << "She didn't like having a cock up her ass today.\n\n"; }
else if (roll >= 90) { enjoy += g_Dice % 3 + 1; ss << "She loved having her ass pounded today.\n\n"; }
else /* */{ enjoy += g_Dice % 2; ss << "She had a pleasant day letting her co-star slip his cock into her butt.\n\n";
}
jobperformance = enjoy * 2;
if (g_Girls.CheckVirginity(girl))
{
jobperformance += 20;
ss << "She is a virgin.\n";
}
// remaining modifiers are in the AddScene function --PP
finalqual = g_Studios.AddScene(girl, SKILL_ANAL, jobperformance);
ss << "Her scene is valued at: " << finalqual << " gold.";
girl->m_Events.AddMessage(ss.str(), IMGTYPE_ANAL, Day0Night1);
// work out the pay between the house and the girl
if (girl->is_slave() && !cfg.initial.slave_pay_outofpocket())
{
wages = 0; // You own her so you don't have to pay her.
}
else
{
wages += finalqual * 2;
}
girl->m_Pay = wages;
// Improve stats
int xp = 10, skill = 3;
if (g_Girls.HasTrait(girl, "Quick Learner")) { skill += 1; xp += 3; }
else if (g_Girls.HasTrait(girl, "Slow Learner")) { skill -= 1; xp -= 3; }
g_Girls.UpdateStat(girl, STAT_EXP, xp);
g_Girls.UpdateSkill(girl, SKILL_PERFORMANCE, g_Dice%skill);
g_Girls.UpdateSkill(girl, SKILL_ANAL, g_Dice%skill + 1);
g_Girls.UpdateEnjoyment(girl, ACTION_SEX, enjoy);
g_Girls.UpdateEnjoyment(girl, ACTION_WORKMOVIE, enjoy);
//gain
g_Girls.PossiblyGainNewTrait(girl, "Fake Orgasm Expert", 50, ACTION_SEX, "She has become quite the faker.", Day0Night1);
g_Girls.PossiblyGainNewTrait(girl, "Slut", 80, ACTION_SEX, girlName + " has turned into quite a slut.", Day0Night1);
g_Girls.PossiblyGainNewTrait(girl, "Porn Star", 80, ACTION_WORKMOVIE, "She has performed in enough sex scenes that she has become a well known Porn Star.", Day0Night1);
//lose
return false;
}
示例2: WorkFilmBeast
// `J` Job Movie Studio - Actress
bool cJobManager::WorkFilmBeast(sGirl* girl, sBrothel* brothel, bool Day0Night1, string& summary)
{
int actiontype = ACTION_WORKMOVIE;
// No film crew.. then go home // `J` this will be taken care of in building flow, leaving it in for now
if (g_Studios.GetNumGirlsOnJob(0, JOB_CAMERAMAGE, SHIFT_NIGHT) == 0 || g_Studios.GetNumGirlsOnJob(0, JOB_CRYSTALPURIFIER, SHIFT_NIGHT) == 0)
{
girl->m_Events.AddMessage("There was no crew to film the scene, so she took the day off", IMGTYPE_PROFILE, EVENT_NOWORK);
return false;
}
cConfig cfg;
stringstream ss;
string girlName = girl->m_Realname;
int wages = 50;
int enjoy = 0;
int jobperformance = 0;
g_Girls.UnequipCombat(girl); // not for actress (yet)
ss << girlName << " worked as an actress filming scenes with beasts.\n\n";
int roll = g_Dice.d100();
if (roll <= 10 && g_Girls.DisobeyCheck(girl, ACTION_WORKMOVIE, brothel))
{
ss << "She refused to fuck any beasts on film today.\n";
girl->m_Events.AddMessage(ss.str(), IMGTYPE_PROFILE, EVENT_NOWORK);
return true;
}
else if (roll <= 10) { enjoy -= g_Dice % 3 + 1; ss << "She didn't enjoy letting the creature fuck her.\n\n"; }
else if (roll >= 90) { enjoy += g_Dice % 3 + 1; ss << "She loved the feel of the creature on top of her.\n\n"; }
else /* */{ enjoy += g_Dice % 2; ss << "She didn't do much else today.\n\n"; }
jobperformance = enjoy * 2;
if (g_Girls.CheckVirginity(girl))
{
g_Girls.LoseVirginity(girl); // `J` updated for trait/status
jobperformance += 50;
ss << "She is no longer a virgin.\n";
}
// remaining modifiers are in the AddScene function --PP
int finalqual = g_Studios.AddScene(girl, SKILL_BEASTIALITY, jobperformance);
ss << "Her scene is valued at: " << finalqual << " gold.\n";
// mod: added check for number of beasts owned; otherwise, fake beasts could somehow inseminate the girl
if (g_Brothels.GetNumBeasts() > 0)
{
if (!girl->calc_insemination(g_Brothels.GetPlayer(), false, 1.0))
g_MessageQue.AddToQue(girl->m_Realname + " has gotten inseminated", 0);
}
girl->m_Events.AddMessage(ss.str(), IMGTYPE_BEAST, Day0Night1);
// work out the pay between the house and the girl
if (girl->is_slave() && !cfg.initial.slave_pay_outofpocket())
{
wages = 0; // You own her so you don't have to pay her.
}
else
{
wages += finalqual * 2;
}
girl->m_Pay = wages;
// Improve stats
int xp = 10, skill = 3;
if (g_Girls.HasTrait(girl, "Quick Learner")) { skill += 1; xp += 3; }
else if (g_Girls.HasTrait(girl, "Slow Learner")) { skill -= 1; xp -= 3; }
g_Girls.UpdateStat(girl, STAT_EXP, xp);
g_Girls.UpdateSkill(girl, SKILL_PERFORMANCE, g_Dice%skill);
g_Girls.UpdateSkill(girl, SKILL_BEASTIALITY, g_Dice%skill + 1);
g_Girls.UpdateEnjoyment(girl, ACTION_SEX, enjoy);
g_Girls.UpdateEnjoyment(girl, ACTION_WORKMOVIE, enjoy);
g_Girls.PossiblyGainNewTrait(girl, "Fake Orgasm Expert", 50, ACTION_SEX, "She has become quite the faker.", Day0Night1);
g_Girls.PossiblyGainNewTrait(girl, "Porn Star", 80, ACTION_WORKMOVIE, "She has performed in enough sex scenes that she has become a well known Porn Star.", Day0Night1);
return false;
}
示例3: WorkFilmAction
//.........这里部分代码省略.........
}
else
{
ss << ", but she wouldn't listen.";
}
}
else
{
ss << " made an awful action scene,";
AddStory(&ss);
ss << " Even her fans will hate it.";
g_Girls.UpdateStat(girl, STAT_FAME, -1);
}
ss << "\n";
//Enjoyed? If she performed well, she'd should have enjoyed it.
if (jobperformance >= 200)
{
enjoy += (g_Dice % 3 + 1);
ss << "She loved performing on film today.\n\n";
}
else if (jobperformance >= 100)
{
enjoy += g_Dice % 2;
ss << "She enjoyed this performance.\n\n";
}
else
{
enjoy -= (g_Dice % 3 + 2);
ss << "She found this awkward and did not enjoy it.\n\n";
}
// remaining modifiers are in the AddScene function --PP
int finalqual = g_Studios.AddScene(girl, JOB_FILMACTION, bonus);
ss << "Her scene is valued at: " << finalqual << " gold.\n";
girl->m_Events.AddMessage(ss.str(), IMGTYPE_COMBAT, Day0Night1);
// work out the pay between the house and the girl
if (girl->is_slave() && !cfg.initial.slave_pay_outofpocket())
{
wages = 0; // You own her so you don't have to pay her.
}
else
{
wages += finalqual * 2;
}
girl->m_Tips = max(0, tips);
girl->m_Pay = max(0, wages);
// Improve stats
int xp = 10, skill = 3, libido = 1;
if (girl->has_trait( "Quick Learner")) { skill += 1; xp += 3; }
else if (girl->has_trait( "Slow Learner")) { skill -= 1; xp -= 3; }
if (girl->has_trait( "Nymphomaniac")) { libido += 2; }
g_Girls.UpdateStat(girl, STAT_EXP, xp);
g_Girls.UpdateSkill(girl, SKILL_PERFORMANCE, g_Dice%skill);
g_Girls.UpdateSkill(girl, SKILL_COMBAT, g_Dice%skill + 1);
g_Girls.UpdateSkill(girl, SKILL_MAGIC, g_Dice%skill + 1);
g_Girls.UpdateStatTemp(girl, STAT_LIBIDO, libido);
g_Girls.UpdateEnjoyment(girl, ACTION_COMBAT, enjoy);
g_Girls.UpdateEnjoyment(girl, ACTION_WORKMOVIE, enjoy);
//gain traits
if (jobperformance >= 140 && g_Dice.percent(50))
{
if (g_Girls.PossiblyGainNewTrait(girl, "Brawler", 60, ACTION_COMBAT, "She has performed in enough fight scenes that she has become quite a brawler.", Day0Night1));
else if (g_Girls.PossiblyGainNewTrait(girl, "Tough", 70, ACTION_COMBAT, "She has performed in enough fight scenes that she has become quite tough.", Day0Night1));
else if (g_Girls.PossiblyGainNewTrait(girl, "Agile", 80, ACTION_COMBAT, "She has performed martial arts scenes that she is becoming agile.", Day0Night1));
else (g_Girls.PossiblyGainNewTrait(girl, "Fleet of Foot", 90, ACTION_COMBAT, "She has performed so many action scenes that she has become fast on her feet.", Day0Night1));
}
if (jobperformance >= 140 && g_Dice.percent(50))
{
if (g_Girls.PossiblyGainNewTrait(girl, "Charismatic", 60, ACTION_WORKMOVIE, "She has performed in enough movie scenes that she has become charismatic.", Day0Night1));
else if (g_Girls.PossiblyGainNewTrait(girl, "Actress", 70, ACTION_WORKMOVIE, "She has performed in enough movie scenes that she has become a good actress.", Day0Night1));
else g_Girls.PossiblyGainNewTrait(girl, "Sexy Air", 80, ACTION_WORKSTRIP, girlName + " has been having to be sexy for so long she now reeks sexiness.", Day0Night1);
}
// nice job bonus-------------------------------------------------------
//BONUS - Nice jobs show off her assets and make her happy, increasing fame and love.
int MrNiceGuy = g_Dice % 6, MrFair = g_Dice % 6;
MrNiceGuy = (MrNiceGuy + MrFair)/3; //Should come out around 1-2 most of the time.
g_Girls.UpdateStat(girl, STAT_HAPPINESS, MrNiceGuy);
g_Girls.UpdateStat(girl, STAT_FAME, MrNiceGuy);
g_Girls.UpdateStat(girl, STAT_PCLOVE, MrNiceGuy);
g_Girls.UpdateStat(girl, STAT_PCHATE, -MrNiceGuy);
g_Girls.UpdateStat(girl, STAT_PCFEAR, -MrNiceGuy);
The_Player->disposition(MrNiceGuy);
//----------------------------------------------------------------------
return false;
}
示例4: WorkFilmBondage
// `J` Job Movie Studio - Actress
bool cJobManager::WorkFilmBondage(sGirl* girl, sBrothel* brothel, bool Day0Night1, string& summary)
{
int actiontype = ACTION_WORKMOVIE;
// No film crew.. then go home // `J` this will be taken care of in building flow, leaving it in for now
if (g_Studios.GetNumGirlsOnJob(0, JOB_CAMERAMAGE, SHIFT_NIGHT) == 0 || g_Studios.GetNumGirlsOnJob(0, JOB_CRYSTALPURIFIER, SHIFT_NIGHT) == 0)
{
girl->m_Events.AddMessage("There was no crew to film the scene, so she took the day off", IMGTYPE_PROFILE, EVENT_NOWORK);
return false;
}
stringstream ss;
string girlName = girl->m_Realname;
int wages = 50;
int enjoy = 0;
int jobperformance = 0;
g_Girls.UnequipCombat(girl); // not for actress (yet)
ss << girlName << " worked as an actress filming BDSM scenes.\n\n";
int roll = g_Dice.d100();
if (roll <= 10 && g_Girls.DisobeyCheck(girl, ACTION_WORKMOVIE, brothel))
{
ss << "She refused to get beaten on film today.\n";
girl->m_Events.AddMessage(ss.str(), IMGTYPE_PROFILE, EVENT_NOWORK);
return true;
}
else if (roll <= 10) { enjoy -= g_Dice % 3 + 1; ss << "She did not enjoy getting tied up and hurt today.\n\n"; }
else if (roll >= 90) { enjoy += g_Dice % 3 + 1; ss << "She had a great time getting spanked and whipped.\n\n"; }
else /* */{ enjoy += g_Dice % 2; ss << "She had just another day in the dungeon.\n\n"; }
jobperformance = enjoy * 2;
if (g_Girls.CheckVirginity(girl))
{
g_Girls.LoseVirginity(girl); // `J` updated for trait/status
jobperformance += 50;
ss << "She is no longer a virgin.\n";
}
sCustomer* Cust = new sCustomer; g_Customers.GetCustomer(Cust, brothel); Cust->m_Amount = 1;
if (Cust->m_IsWoman) // FemDom
{
jobperformance += 20;
/* */if (girl->has_trait("Lesbian")) jobperformance += 20;
else if (girl->has_trait("Straight")) jobperformance -= 20;
}
else
{
if (!girl->calc_pregnancy(Cust, false, 0.75))
g_MessageQue.AddToQue(girl->m_Realname + " has gotten pregnant", 0);
/* */if (girl->has_trait("Lesbian")) jobperformance -= 10;
else if (girl->has_trait("Straight")) jobperformance += 10;
}
// remaining modifiers are in the AddScene function --PP
int finalqual = g_Studios.AddScene(girl, SKILL_BDSM, jobperformance);
ss << "Her scene is valued at: " << finalqual << " gold.\n";
girl->m_Events.AddMessage(ss.str(), IMGTYPE_BDSM, Day0Night1);
// work out the pay between the house and the girl
if (girl->is_slave() && !cfg.initial.slave_pay_outofpocket())
{
wages = 0; // You own her so you don't have to pay her.
}
else
{
wages += finalqual * 2;
}
girl->m_Pay = wages;
// Improve stats
int xp = 10, skill = 3;
if (g_Girls.HasTrait(girl, "Quick Learner")) { skill += 1; xp += 3; }
else if (g_Girls.HasTrait(girl, "Slow Learner")) { skill -= 1; xp -= 3; }
g_Girls.UpdateStat(girl, STAT_EXP, xp);
g_Girls.UpdateSkill(girl, SKILL_PERFORMANCE, g_Dice%skill);
g_Girls.UpdateSkill(girl, SKILL_BDSM, g_Dice%skill + 1);
g_Girls.UpdateEnjoyment(girl, ACTION_SEX, enjoy);
g_Girls.UpdateEnjoyment(girl, ACTION_WORKMOVIE, enjoy);
//gain
g_Girls.PossiblyGainNewTrait(girl, "Fake Orgasm Expert", 50, ACTION_SEX, "She has become quite the faker.", Day0Night1);
g_Girls.PossiblyGainNewTrait(girl, "Masochist", 65, ACTION_SEX, girlName + " has turned into a Masochist from filming so many BDSM scenes.", Day0Night1);
g_Girls.PossiblyGainNewTrait(girl, "Slut", 80, ACTION_SEX, girlName + " has turned into quite a slut.", Day0Night1);
g_Girls.PossiblyGainNewTrait(girl, "Porn Star", 80, ACTION_WORKMOVIE, "She has performed in enough sex scenes that she has become a well known Porn Star.", Day0Night1);
//lose
delete Cust;
return false;
}