Moved from experimental scenarios to main objects: Wall kit, gems, gem goals, reduced pickaxe strength (can't pick granite)
|
@ -6,7 +6,6 @@ Difficulty=90
|
|||
|
||||
[Definitions]
|
||||
Definition1=Objects.ocd
|
||||
Definition2=Experimental.ocd\WallKit.ocd
|
||||
|
||||
[Game]
|
||||
Goals=Goal_AcidDrilling=1;
|
||||
|
|
|
@ -6,7 +6,6 @@ Difficulty=90
|
|||
|
||||
[Definitions]
|
||||
Definition1=Objects.ocd
|
||||
Definition2=Experimental.ocd\WallKit.ocd
|
||||
|
||||
[Game]
|
||||
Goals=Goal_Wealth=1;
|
||||
|
|
|
@ -6,7 +6,6 @@ Difficulty=90
|
|||
|
||||
[Definitions]
|
||||
Definition1=Objects.ocd
|
||||
Definition2=Experimental.ocd\WallKit.ocd
|
||||
|
||||
[Game]
|
||||
Goals=Goal_SellGems=1;
|
||||
|
|
|
@ -1,15 +0,0 @@
|
|||
[DefCore]
|
||||
id=Ruby
|
||||
Version=5,2,0,1
|
||||
Category=C4D_Object
|
||||
Width=8
|
||||
Height=8
|
||||
Offset=-4,-4
|
||||
Vertices=4
|
||||
VertexX=-4,0,4,0
|
||||
VertexY=0,-4,0,4
|
||||
VertexFriction=70,70,70,70
|
||||
Value=50
|
||||
Mass=10
|
||||
Components=Sulphur=1
|
||||
Rotate=1
|
Before Width: | Height: | Size: 5.5 KiB |
Before Width: | Height: | Size: 5.7 KiB |
Before Width: | Height: | Size: 5.5 KiB |
Before Width: | Height: | Size: 6.1 KiB |
|
@ -1,36 +0,0 @@
|
|||
/*--- Ruby ---*/
|
||||
|
||||
local Collectible = 1;
|
||||
local Name = "$Name$";
|
||||
local Description = "$Description$";
|
||||
|
||||
func Initialize()
|
||||
{
|
||||
AddEffect("Sparkle", this, 10, 2, this);
|
||||
var gfx = Random(4);
|
||||
if (gfx) SetGraphics(Format("%d", gfx+1));
|
||||
return true;
|
||||
}
|
||||
|
||||
func FxSparkleTimer(target, effect, effect_time)
|
||||
{
|
||||
if(this()->Contained()) return;
|
||||
CreateParticle("MagicRing", 0, 0, 0, 0, Cos(effect_time*10, 100), RGBa(255,20,20,100), this, false);
|
||||
return true;
|
||||
}
|
||||
|
||||
func IsValuable() { return true; }
|
||||
|
||||
func QueryOnSell()
|
||||
{
|
||||
// Inform goal of gem sale
|
||||
var goal = FindObject(Find_ID(Goal_SellGems));
|
||||
if (goal) goal->OnGemSold();
|
||||
return false; // do perform selling
|
||||
}
|
||||
|
||||
func Hit()
|
||||
{
|
||||
Sound("GlassHit*");
|
||||
return true;
|
||||
}
|
|
@ -1,2 +0,0 @@
|
|||
Name=Rubin
|
||||
Description=Wertvoller Klunker
|
|
@ -1,2 +0,0 @@
|
|||
Name=Ruby
|
||||
Description=Valuable clunker
|
|
@ -6,7 +6,6 @@ Difficulty=90
|
|||
|
||||
[Definitions]
|
||||
Definition1=Objects.ocd
|
||||
; Definition1=Objects.ocd\Libraries.ocd\Map.ocd
|
||||
|
||||
[Game]
|
||||
Goals=Goal_SellGems=1;
|
||||
|
|
|
@ -1,5 +0,0 @@
|
|||
[DefCore]
|
||||
id=Goal_SellGems
|
||||
Version=5,2,0,1
|
||||
Category=C4D_StaticBack|C4D_Goal
|
||||
Picture=0,0,128,128
|
Before Width: | Height: | Size: 28 KiB |
|
@ -1,76 +0,0 @@
|
|||
/*--
|
||||
Sell Gems
|
||||
Author: Sven2
|
||||
|
||||
Sell n gems at flagpole.
|
||||
--*/
|
||||
|
||||
|
||||
#include Library_Goal
|
||||
|
||||
local gems_to_sell;
|
||||
|
||||
protected func Initialize()
|
||||
{
|
||||
gems_to_sell = 20; // default
|
||||
return inherited(...);
|
||||
}
|
||||
|
||||
func SetTargetAmount(int new_amount)
|
||||
{
|
||||
gems_to_sell = new_amount;
|
||||
return true;
|
||||
}
|
||||
|
||||
func OnGemSold()
|
||||
{
|
||||
// A gem was sold. Subtract.
|
||||
gems_to_sell = Max(gems_to_sell-1);
|
||||
return true;
|
||||
}
|
||||
|
||||
/*-- Goal interface --*/
|
||||
|
||||
// The goal is fulfilled if no more gems need to be sold
|
||||
public func IsFulfilled()
|
||||
{
|
||||
return (gems_to_sell<=0);
|
||||
}
|
||||
|
||||
// Shows or hides a message window with information.
|
||||
public func Activate(int plr)
|
||||
{
|
||||
// If goal message open -> hide it.
|
||||
if (GetEffect("GoalMessage", this))
|
||||
{
|
||||
CustomMessage("", nil, plr, nil, nil, nil, nil, nil, MSG_HCenter);
|
||||
RemoveEffect("GoalMessage", this);
|
||||
return;
|
||||
}
|
||||
// Otherwise open a new message.
|
||||
AddEffect("GoalMessage", this, 100, 0, this);
|
||||
var message;
|
||||
if (IsFulfilled())
|
||||
message = "@$MsgGoalFulfilled$";
|
||||
else
|
||||
message = Format("@$MsgGoalUnfulfilled$", gems_to_sell);
|
||||
|
||||
CustomMessage(message, nil, plr, 0, 16 + 64, 0xffffff, GUI_MenuDeco, this, MSG_HCenter);
|
||||
return;
|
||||
}
|
||||
|
||||
protected func FxGoalMessageStart() {}
|
||||
|
||||
public func GetShortDescription(int plr)
|
||||
{
|
||||
// Show acquired wealth compared to goal.
|
||||
var clr = RGB(255, 0, 0);
|
||||
if (gems_to_sell<=0)
|
||||
clr = RGB(0, 255, 0);
|
||||
var msg = Format("<c %x>%d</c>{{%i}}", clr, gems_to_sell, Ruby);
|
||||
return msg;
|
||||
}
|
||||
|
||||
/*-- Proplist --*/
|
||||
|
||||
local Name = "$Name$";
|
|
@ -1,4 +0,0 @@
|
|||
Name=Edelsteine verkaufen
|
||||
#Goal window
|
||||
MsgGoalFulfilled=Ihr habt genug Edelsteine verkauft!
|
||||
MsgGoalUnfulfilled=Ihr müsst noch %d Edelsteine verkaufen.
|
|
@ -1,5 +0,0 @@
|
|||
Name=Sell gems
|
||||
|
||||
#Goal window
|
||||
MsgGoalFulfilled=You've sold enough gems!
|
||||
MsgGoalUnfulfilled=You need to sell %d more gems.
|
|
@ -6,8 +6,6 @@ Difficulty=90
|
|||
|
||||
[Definitions]
|
||||
Definition1=Objects.ocd
|
||||
Definition2=Experimental.ocd\WallKit.ocd
|
||||
Definition3=Experimental.ocd\Gems.ocd
|
||||
|
||||
[Game]
|
||||
Goals=Goal_SellGems=1;
|
||||
|
|
|
@ -1,3 +0,0 @@
|
|||
#appendto Pickaxe
|
||||
|
||||
local MaxPickDensity = 70; // can't pick granite
|
|
@ -6,7 +6,6 @@ Difficulty=20
|
|||
|
||||
[Definitions]
|
||||
Definition1=Objects.ocd
|
||||
Definition2=Experimental.ocd\Gems.ocd
|
||||
|
||||
[Game]
|
||||
Goals=Goal_RubyHunt=1;
|
||||
|
|
|
@ -6,8 +6,6 @@ Difficulty=90
|
|||
|
||||
[Definitions]
|
||||
Definition1=Objects.ocd
|
||||
Definition2=Experimental.ocd\WallKit.ocd
|
||||
Definition3=Experimental.ocd\Gems.ocd
|
||||
|
||||
[Game]
|
||||
Goals=Goal_SellGems=1;
|
||||
|
|
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 23 KiB |
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 28 KiB |
Before Width: | Height: | Size: 6.2 KiB After Width: | Height: | Size: 6.2 KiB |
Before Width: | Height: | Size: 6.3 KiB After Width: | Height: | Size: 6.3 KiB |
Before Width: | Height: | Size: 6.0 KiB After Width: | Height: | Size: 6.0 KiB |
Before Width: | Height: | Size: 6.7 KiB After Width: | Height: | Size: 6.7 KiB |
Before Width: | Height: | Size: 5.5 KiB After Width: | Height: | Size: 5.5 KiB |
Before Width: | Height: | Size: 5.7 KiB After Width: | Height: | Size: 5.7 KiB |
Before Width: | Height: | Size: 5.5 KiB After Width: | Height: | Size: 5.5 KiB |
Before Width: | Height: | Size: 6.1 KiB After Width: | Height: | Size: 6.1 KiB |
|
@ -176,4 +176,4 @@ local Name = "$Name$";
|
|||
local Description = "$Description$";
|
||||
local UsageHelp = "$UsageHelp$";
|
||||
local Rebuy = true;
|
||||
local MaxPickDensity = 80;
|
||||
local MaxPickDensity = 70; // can't pick granite
|
||||
|
|
Before Width: | Height: | Size: 9.4 KiB After Width: | Height: | Size: 9.4 KiB |
Before Width: | Height: | Size: 141 B After Width: | Height: | Size: 141 B |