Code: Select all
var() class<actor> prototype;
...
if (IsAbstract(prototype))
warn("cannot spawn an abstract Actor");
Code: Select all
var() class<actor> prototype;
...
if (IsAbstract(prototype))
warn("cannot spawn an abstract Actor");
Code: Select all
LooksAndFeels[i] = new LFClass;
Code: Select all
Botpack/Classes/Arena.uc: abstract;
Botpack/Classes/Bot.uc: abstract;
Botpack/Classes/ChallengeVoicePack.uc: abstract;
Botpack/Classes/FemaleBotPlus.uc: abstract;
Botpack/Classes/HumanBotPlus.uc: abstract;
Botpack/Classes/Ladder.uc: abstract
Botpack/Classes/MaleBotPlus.uc: abstract;
Botpack/Classes/StationaryPawn.uc: abstract;
Botpack/Classes/TFemaleBody.uc: abstract;
Botpack/Classes/TMaleBody.uc: abstract;
Botpack/Classes/TournamentAmmo.uc: abstract;
Botpack/Classes/TournamentConsole.uc: abstract;
Botpack/Classes/TournamentFemale.uc: abstract;
Botpack/Classes/TournamentHealth.uc: abstract;
Botpack/Classes/TournamentMale.uc: abstract;
Botpack/Classes/TournamentPlayer.uc: abstract;
Botpack/Classes/TournamentWeapon.uc: abstract;
Botpack/Classes/UTHumanCarcass.uc: abstract;
Botpack/Classes/UT_Decoration.uc: abstract;
Botpack/Classes/VoiceFemale.uc: abstract;
Botpack/Classes/VoiceMale.uc: abstract;
Core/Classes/Commandlet.uc: abstract
Editor/Classes/BrushBuilder.uc: abstract
Engine/Classes/Actor.uc: abstract
Engine/Classes/Ammo.uc: abstract
Engine/Classes/DamageType.uc: abstract;
Engine/Classes/Decoration.uc: abstract
Engine/Classes/HUD.uc: abstract
Engine/Classes/Info.uc: abstract
Engine/Classes/Inventory.uc: abstract
Engine/Classes/Keypoint.uc: abstract
Engine/Classes/MessagingSpectator.uc: abstract;
Engine/Classes/Pawn.uc: abstract
Engine/Classes/Pickup.uc: abstract
Engine/Classes/Projectile.uc: abstract
Engine/Classes/ReplicationInfo.uc: abstract
Engine/Classes/VoicePack.uc: abstract;
Engine/Classes/Weapon.uc: abstract
Fire/Classes/FractalTexture.uc: abstract;
Fire/Classes/WaterTexture.uc: abstract;
MultiMesh/Classes/CustomBot.uc: abstract;
MultiMesh/Classes/customplayer.uc: abstract;
Relics/Classes/Relic.uc: abstract;
UBrowser/Classes/UBrowserServerListFactory.uc: abstract;
UnrealI/Classes/Burned.uc: abstract;
UnrealI/Classes/Corroded.uc: abstract;
UnrealI/Classes/Decapitated.uc: abstract;
UnrealI/Classes/Drowned.uc: abstract;
UnrealI/Classes/Fell.uc: abstract;
UnrealI/Classes/UnrealDamageType.uc: abstract;
UnrealShare/Classes/Bots.uc: abstract;
UnrealShare/Classes/DeadMales.uc: abstract;
UnrealShare/Classes/Female.uc: abstract;
UnrealShare/Classes/FemaleBot.uc: abstract;
UnrealShare/Classes/Human.uc: abstract;
UnrealShare/Classes/HumanBot.uc: abstract;
UnrealShare/Classes/HumanCarcass.uc: abstract;
UnrealShare/Classes/Male.uc: abstract;
UnrealShare/Classes/MaleBot.uc: abstract;
UnrealShare/Classes/ScriptedPawn.uc: abstract;
UnrealShare/Classes/ShareSounds.uc: abstract;
UnrealShare/Classes/Skaarj.uc: abstract;
UnrealShare/Classes/UnrealIPlayer.uc: abstract;
UTMenu/Classes/MeshBrowser.uc: abstract;
UTMenu/Classes/UTLadder.uc: abstract;
UTMenu/Classes/UTLadderStub.uc: abstract;
BTW: I suspect that the star in front of a class name in UnrealEd v469b indicate an abstract class?
Yes, it does - it took me a while to work that out. First noticed that in the 227 Editor.
I have a Mutator that checks some things in a map and this topic is especially for Factories where the prototype is an abstract class.
Code: Select all
if (CheckedClass->ClassFlags & CLASS_Abstract)
{
// this is an abstract class
}