|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectcom.planet_ink.coffee_mud.Common.DefaultClan
public class DefaultClan
Portions Copyright (c) 2003 Jeremy Vyska
Portions Copyright (c) 2004-2011 Bo Zimmerman
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from interface com.planet_ink.coffee_mud.Common.interfaces.Clan |
|---|
Clan.Authority, Clan.AutoPromoteFlag, Clan.ClanVote, Clan.Function, Clan.MemberRecord |
| Field Summary | |
|---|---|
protected java.lang.String |
acceptanceSettings
|
protected int |
autoPosition
|
protected java.lang.String |
clanClass
|
protected java.lang.String |
clanDonationRoom
|
protected java.util.Vector<java.lang.Long> |
clanKills
|
protected int |
clanLevel
|
protected java.lang.String |
clanMorgue
|
protected java.lang.String |
clanName
|
protected java.lang.String |
clanPremise
|
protected java.lang.String |
clanRecall
|
protected int |
clanStatus
|
protected int |
clanTrophies
|
protected static java.util.List<Ability> |
empty
|
protected long |
exp
|
protected java.lang.Object |
expSync
|
int |
government
|
ClanGovernment |
govt
|
protected java.lang.String |
lastClanKillRecord
|
long |
lastGovernmentLoadTime
|
java.util.Hashtable<java.lang.String,long[]> |
relations
|
protected double |
taxRate
|
protected java.util.Vector<Clan.ClanVote> |
voteList
|
| Fields inherited from interface com.planet_ink.coffee_mud.Common.interfaces.Clan |
|---|
CLAN_STATS, CLANSTATUS_ACTIVE, CLANSTATUS_DESC, CLANSTATUS_FADING, CLANSTATUS_PENDING, REL_ALLY, REL_DESCS, REL_FRIENDLY, REL_HOSTILE, REL_NEUTRAL, REL_NEUTRALITYGAUGE, REL_STATES, REL_WAR, RELATIONSHIP_VECTOR, TROPHY_AREA, TROPHY_CONTROL, TROPHY_DESCS, TROPHY_DESCS_SHORT, TROPHY_EXP, TROPHY_PK, VSTAT_DESCS, VSTAT_FAILED, VSTAT_PASSED, VSTAT_STARTED |
| Constructor Summary | |
|---|---|
DefaultClan()
|
|
| Method Summary | |
|---|---|
void |
addMember(MOB M,
int role)
Adds a new member to this clan |
void |
addVote(Clan.ClanVote CV)
Adds a new ClanVote object to the list of ongoing votes for this |
void |
adjExp(int howMuch)
Adjusts the amount of experience earned by this |
int |
applyExpMods(int exp)
Adjusts the amount of experience earned by a player based on the tax rate. |
long |
calculateMapPoints()
Returns the total control points earned by this clan |
long |
calculateMapPoints(java.util.List<Area> controlledAreas)
Returns the total control points represented by the list of controlled areas given. |
boolean |
canBeAssigned(MOB mob,
int role)
Returns whether the given user can be assigned the given role |
java.util.List<Ability> |
clanAbilities(MOB mob)
Return a vector of skills, spells, and other abilities granted to the given mob of the given mobs level. |
void |
clanAnnounce(java.lang.String msg)
Sends a message to all members of all clans. |
ChameleonList<Ability> |
clanEffects(MOB mob)
Return a vector of skills, spells, and other effects granted to the given mob of the given mobs level. |
java.lang.String |
clanID()
Returns the unique identifying ID of the clan for reference elsewhere. |
int |
compareTo(CMObject o)
|
CMObject |
copyOf()
Similar to Cloneable.clone(), but does its best to make sure that any internal objects to this class are also copyOfed. |
void |
create()
Orders the system to create this clan in the database. |
void |
delMember(MOB M)
Del a member from this clan |
void |
delVote(Clan.ClanVote CV)
Removes a new ClanVote object from the list of ongoing votes for this |
void |
destroyClan()
Orders the system to destroy this clan in the database. |
boolean |
doesOutRank(int highRoleID,
int lowRoleID)
Returns whether the high role id outranks the low roldid |
java.lang.String |
fixRequirementMask(java.lang.String oldMask)
|
java.lang.String |
getAcceptanceSettings()
Returns a mask used to identify whether a player is allowed to join a particular |
Clan.Authority |
getAuthority(int roleID,
Clan.Function function)
Returns whether the given roleID is allowed to perform the given function. |
int |
getAutoPosition()
Returns whether membership is automatically approved to this And if so, what the default position for members are. |
java.lang.String |
getBasicRequirementMask()
Returns the inner (government usually) requirements to even apply to this clan |
java.lang.String |
getClanClass()
Retrieves this Clan's enforced character class. |
protected CharClass |
getClanClassC()
|
int |
getClanLevel()
Returns the current clan level |
int |
getClanRelations(java.lang.String id)
Returns a REL_* constant denoting the relationship between this clan and the clan of the given name. |
java.util.List<Area> |
getControlledAreas()
Returns all the areas on the map controlled by this |
int |
getCurrentClanKills()
Returns the number of other-clan kills this clan has recorded. |
java.lang.String |
getDetail(MOB mob)
Creates the string for the 'clandetail' command, based on the security of the given mob who will view the details. |
java.lang.String |
getDonation()
Returns the roomID of this clans donation room |
long |
getExp()
Gets the amount of experience earned by this |
ClanGovernment |
getGovernment()
Returns the object representing the government of this |
int |
getGovernmentID()
Returns the id representing the government type of this |
java.lang.String |
getGovernmentName()
Returns Clan, Republic, or another one of the clan government types. |
long |
getLastRelationChange(java.lang.String id)
Returns the time/date stamp when this clan last changed its relations with the given |
java.util.List<Clan.MemberRecord> |
getMemberList()
Returns the set of members, where each row represents a MemberRecord |
java.util.List<Clan.MemberRecord> |
getMemberList(int PosFilter)
Returns the set of members, where each row represents a MemberRecord. |
java.lang.String |
getMorgue()
Returns the roomID of this clans morgue room |
int |
getMostInRole(int roleID)
Returns the maximum number of players who can hold the given role in this For assignment purposes. |
java.lang.String |
getName()
Returns the name of the clan, which is almost always the same as the ID, which is why clans can't change their names. |
int |
getNumberRoles()
Returns the number of roles (max roleid) |
int |
getNumVoters(Clan.Function function)
Returns the number of members allowed to vote on the given function. |
java.lang.String |
getPolitics()
Returns an XML string used to identify the political relations between this clan and others. |
java.lang.String |
getPremise()
Retrieves this Clan's basic story. |
java.util.List<Clan.MemberRecord> |
getRealMemberList(int PosFilter)
|
java.lang.String |
getRecall()
Returns the roomID of this clans recall room (their clan home) |
MOB |
getResponsibleMember()
Returns the highest ranking member of this |
int |
getRoleFromName(java.lang.String position)
For the clan government type, this function will return the clan role that most closely matches the given string "position". |
java.lang.String |
getRoleName(int roleID,
boolean titleCase,
boolean plural)
Returns the friendly descriptive name of a given role in a clan, based on very specific criteria. |
java.lang.String[] |
getRolesList()
Returns the list of roles for people in this clan, from lowest rank to the highest. |
int |
getSaveStatIndex()
Returns the index into the stat codes array where extra savable fields begins. |
int |
getSize()
Returns the number of members of this |
java.lang.String |
getStat(java.lang.String code)
An alternative means of retreiving the values of those fields on this object which are modifiable at run-time by builders. |
java.lang.String[] |
getStatCodes()
Returns an array of the string names of those fields which are modifiable on this object at run-time by builders. |
int |
getStatus()
Returns one of the CLANSTAT_* constants describing the pending status of this clan for acceptable, or whether its one its way out. |
double |
getTaxes()
Gets the tax rate for this |
long |
getTickStatus()
A coded status for this object during the period where its tick method is being called. |
int |
getTopQualifiedRoleID(Clan.Function func,
MOB mob)
Returns the roleid constant representing the highest rank in this clan type that can perform the given function or null. |
java.util.List<java.lang.Integer> |
getTopRankedRoles(Clan.Function func)
Returns the roleid(s) constant representing the highest rank roleid(s) in this clan type that can perform the given function. |
int |
getTrophies()
Returns a bitmap representing the trophies won by this The bitmap is made up of TROPHY_* constants. |
protected ClanGovernment |
govt()
|
java.lang.String |
ID()
The CoffeeMud Java Class ID shared by all instances of this object. |
void |
initializeClass()
Called ONCE after all objects are loaded, but before the map is read in during initialization. |
boolean |
isLoyaltyThroughItems()
Returns whether this clan attains conquest loyalty through giving out clan items. |
boolean |
isOnlyFamilyApplicants()
Returns whether this clan only accepts applicants from people who are family of current members/founder. |
boolean |
isPubliclyListedFor(MOB mob)
Returns whether this clan gets listed with the clanlist command. |
protected boolean |
isSafeFromPurge()
|
boolean |
isStat(java.lang.String code)
An alternative means of retreiving the values of those fields on this object which are modifiable at run-time by builders. |
boolean |
isWorshipConquest()
Returns whether this clan attains conquest loyalty through mobs worshiping the same deity as their leader. |
java.lang.String |
name()
The nice displayable name of this instance of this object |
CMObject |
newInstance()
return a new instance of the object |
int |
numClanEffects(MOB mob)
Return size of a vector of skills, spells, and other effects granted to the given mob of the given mobs level. |
void |
recordClanKill()
Called when a member of this clan kills a member of another Will update the clan in the database. |
void |
setAcceptanceSettings(java.lang.String newSettings)
Sets a mask used to identify whether a player is allowed to join a particular |
void |
setAutoPosition(int pos)
Sets whether membership is automatically approved to this And if so, what the default position for members are. |
void |
setClanClass(java.lang.String newClass)
Sets this Clan's enforced character class. |
void |
setClanLevel(int newClanLevel)
Sets the new clan level |
void |
setClanRelations(java.lang.String id,
int rel,
long time)
Sets a new relationship between this clan and the clan with the given id. |
void |
setDonation(java.lang.String newDonation)
Sets the roomID of this clans donation room |
void |
setExp(long newexp)
Sets the amount of experience earned by this |
void |
setGovernmentID(int type)
Returns the id constant representing the government type of this |
void |
setMorgue(java.lang.String newMorgue)
Sets the roomID of this clans morgue room |
void |
setName(java.lang.String newName)
Sets a new name for this |
void |
setPolitics(java.lang.String politics)
Sets an XML string used to identify the political relations between this clan and others. |
void |
setPremise(java.lang.String newPremise)
Sets this Clan's basic story. |
void |
setRecall(java.lang.String newRecall)
Sets the roomID of this clans recall room (their clan home) |
void |
setStat(java.lang.String code,
java.lang.String val)
An alternative means of setting the values of those fields on this object which are modifiable at run-time by builders. |
void |
setStatus(int newStatus)
Sets one of the CLANSTAT_* constants describing the pending status of this clan for acceptable, or whether its one its way out. |
void |
setTaxes(double rate)
Sets the tax rate for this |
void |
setTrophies(int trophyFlag)
Sets a bitmap representing the trophies won by this The bitmap is made up of TROPHY_* constants. |
boolean |
tick(Tickable ticking,
int tickID)
this is the method which is called periodically by the threading engine. |
void |
update()
Orders the system to update this clan in the database. |
boolean |
updateClanPrivileges(MOB M)
This method is called when a given mobs clan status changes, for instance if they are added to the clan, removed from it, or change their rank. |
void |
updateVotes()
Orders the system to save any changes to existing ongoing votes for this |
java.util.Enumeration<Clan.ClanVote> |
votes()
If the clan type allows voting, this returns a series of ClanVote objects |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected java.lang.String clanName
protected java.lang.String clanPremise
protected java.lang.String clanRecall
protected java.lang.String clanMorgue
protected java.lang.String clanClass
protected int clanLevel
protected java.lang.String clanDonationRoom
protected int clanTrophies
protected int autoPosition
protected java.lang.String acceptanceSettings
protected int clanStatus
protected java.lang.String lastClanKillRecord
protected double taxRate
protected volatile long exp
protected java.lang.Object expSync
protected java.util.Vector<Clan.ClanVote> voteList
protected java.util.Vector<java.lang.Long> clanKills
public java.util.Hashtable<java.lang.String,long[]> relations
public int government
public long lastGovernmentLoadTime
public ClanGovernment govt
protected static final java.util.List<Ability> empty
| Constructor Detail |
|---|
public DefaultClan()
| Method Detail |
|---|
public java.lang.String ID()
CMObject
ID in interface CMObjectpublic long getTickStatus()
Tickable
getTickStatus in interface TickableTickable.tick(Tickable, int)public CMObject newInstance()
newInstance in interface CMObjectpublic void initializeClass()
CMObject
initializeClass in interface CMObjectpublic int compareTo(CMObject o)
compareTo in interface java.lang.Comparable<CMObject>public CMObject copyOf()
CMObject
copyOf in interface CMObjectpublic ClanGovernment getGovernment()
Clan
getGovernment in interface ClanGovernment,
Clan.getGovernmentID(),
Clan.setGovernmentID(int)protected ClanGovernment govt()
public void updateVotes()
Clan
updateVotes in interface Clanpublic void addVote(Clan.ClanVote CV)
Clan
addVote in interface ClanCV - the clanvote object to addClan.ClanVotepublic void delVote(Clan.ClanVote CV)
Clan
delVote in interface ClanCV - the clanvote object to removeClan.ClanVotepublic void recordClanKill()
Clan
recordClanKill in interface Clanpublic int getCurrentClanKills()
Clan
getCurrentClanKills in interface Clanpublic boolean isOnlyFamilyApplicants()
Clan
isOnlyFamilyApplicants in interface Clanpublic boolean isLoyaltyThroughItems()
Clan
isLoyaltyThroughItems in interface Clanpublic boolean isWorshipConquest()
Clan
isWorshipConquest in interface Clanpublic long calculateMapPoints()
Clan
calculateMapPoints in interface ClanClan.calculateMapPoints(List),
Clan.getControlledAreas(),
Conquerablepublic long calculateMapPoints(java.util.List<Area> controlledAreas)
Clan
calculateMapPoints in interface ClancontrolledAreas - the areas controlled
Clan.calculateMapPoints(),
Clan.getControlledAreas(),
Conquerablepublic java.util.List<Area> getControlledAreas()
Clan
getControlledAreas in interface ClanConquerable,
Areapublic java.util.Enumeration<Clan.ClanVote> votes()
Clan
votes in interface ClanClan.ClanVotepublic int getAutoPosition()
Clan
getAutoPosition in interface ClanClan.setAutoPosition(int)public void setAutoPosition(int pos)
Clan
setAutoPosition in interface Clanpos - the positition to give to applicantsClan.getAutoPosition()public void setExp(long newexp)
Clan
setExp in interface Clannewexp - the experience earnedpublic void adjExp(int howMuch)
Clan
adjExp in interface ClanhowMuch - the experience adjustment, + or -public long getExp()
Clan
getExp in interface Clanpublic int getTrophies()
Clan
getTrophies in interface ClanClan,
Clan.setTrophies(int)public void setTrophies(int trophyFlag)
Clan
setTrophies in interface ClantrophyFlag - a bitmap of the trophiesClan,
Clan.getTrophies()public void setTaxes(double rate)
Clan
setTaxes in interface Clanrate - the tax rate 0-100.0Clan.getTaxes()public double getTaxes()
Clan
getTaxes in interface ClanClan.setTaxes(double)public int getClanRelations(java.lang.String id)
Clan
getClanRelations in interface Clanid - the name of another
Clan.setClanRelations(String, int, long),
Clan.getLastRelationChange(String)public long getLastRelationChange(java.lang.String id)
Clan
getLastRelationChange in interface Clanid - the other clan
Clan.setClanRelations(String, int, long),
Clan.getClanRelations(String)
public void setClanRelations(java.lang.String id,
int rel,
long time)
Clan
setClanRelations in interface Clanid - another clanrel - the REL_* constant for the new relationshiptime - a current date/time stamp for this changepublic int getGovernmentID()
Clan
getGovernmentID in interface ClanClan,
Clan.setGovernmentID(int),
Clan.getGovernment()public void setGovernmentID(int type)
Clan
setGovernmentID in interface Clantype - the type id constantClan,
Clan.getGovernmentID(),
Clan.getGovernment()public void create()
Clan
create in interface Clanpublic void update()
Clan
update in interface Clan
public void addMember(MOB M,
int role)
Clan
addMember in interface ClanM - the member to addrole - the coded role numberpublic void delMember(MOB M)
Clan
delMember in interface ClanM - the member to removepublic boolean updateClanPrivileges(MOB M)
Clan
updateClanPrivileges in interface ClanM - the mob whose status needs updating
public void destroyClan()
Clan
destroyClan in interface Clanprotected CharClass getClanClassC()
public java.lang.String getDetail(MOB mob)
Clan
getDetail in interface Clanmob - the one who will view the details
public java.lang.String getGovernmentName()
Clan
getGovernmentName in interface ClanClan
public boolean canBeAssigned(MOB mob,
int role)
Clan
canBeAssigned in interface Clanmob - the mob to checkrole - the role to check for
public Clan.Authority getAuthority(int roleID,
Clan.Function function)
Clan
getAuthority in interface ClanroleID - the roleID whose priviledges to check.function - the ClanFunction function constant to use
Clan,
Clan.Authoritypublic java.lang.String fixRequirementMask(java.lang.String oldMask)
public java.lang.String getBasicRequirementMask()
Clan
getBasicRequirementMask in interface Clanpublic java.util.List<Clan.MemberRecord> getRealMemberList(int PosFilter)
public int getSize()
Clan
getSize in interface Clanpublic java.lang.String name()
Tickable
name in interface Tickablepublic java.lang.String getName()
Clan
getName in interface ClanClan.setName(String)public java.lang.String clanID()
Clan
clanID in interface ClanClan.getName()public void setName(java.lang.String newName)
Clan
setName in interface ClannewName - the new name of this clanClan.getName(),
Clan.clanID()public java.lang.String getPremise()
Clan
getPremise in interface ClanClan.setPremise(String)public void setPremise(java.lang.String newPremise)
Clan
setPremise in interface ClanClan.getPremise()public int getClanLevel()
Clan
getClanLevel in interface ClanClan.setClanLevel(int)public void setClanLevel(int newClanLevel)
Clan
setClanLevel in interface ClannewClanLevel - the new clan levelClan.getClanLevel()public java.lang.String getAcceptanceSettings()
Clan
getAcceptanceSettings in interface ClanMaskingLibrary,
Clan.setAcceptanceSettings(String)public void setAcceptanceSettings(java.lang.String newSettings)
Clan
setAcceptanceSettings in interface ClannewSettings - the mask used to identify prospectsMaskingLibrary,
Clan.getAcceptanceSettings()public java.lang.String getClanClass()
Clan
getClanClass in interface ClanClan.setClanClass(String)public void setClanClass(java.lang.String newClass)
Clan
setClanClass in interface ClanClan.getClanClass()public java.lang.String getPolitics()
Clan
getPolitics in interface ClanClan.setPolitics(String)public void setPolitics(java.lang.String politics)
Clan
setPolitics in interface Clanpolitics - xml document describing the politics of this clanClan.getPolitics()public int getStatus()
Clan
getStatus in interface ClanClan,
Clan.setStatus(int)public void setStatus(int newStatus)
Clan
setStatus in interface ClannewStatus - a CLANSTAT_* constantClan,
Clan.getStatus()public java.lang.String getRecall()
Clan
getRecall in interface ClanClan.setRecall(String)public void setRecall(java.lang.String newRecall)
Clan
setRecall in interface ClannewRecall - the roomid of this clans clan homeClan.getRecall()public java.lang.String getMorgue()
Clan
getMorgue in interface ClanClan.setMorgue(String)public void setMorgue(java.lang.String newMorgue)
Clan
setMorgue in interface ClannewMorgue - the roomID of this clans morgue roomClan.getMorgue()public java.lang.String getDonation()
Clan
getDonation in interface ClanClan.setDonation(String)public void setDonation(java.lang.String newDonation)
Clan
setDonation in interface ClannewDonation - the roomID of this clans donation roomClan.getDonation()public java.util.List<Clan.MemberRecord> getMemberList()
Clan
getMemberList in interface ClanClan.getMemberList(int),
Clan.MemberRecordpublic java.util.List<Clan.MemberRecord> getMemberList(int PosFilter)
Clan
getMemberList in interface ClanClan,
Clan.MemberRecordpublic int getNumVoters(Clan.Function function)
Clan
getNumVoters in interface Clanfunction - the FUNC_* constant
Clanpublic java.util.List<java.lang.Integer> getTopRankedRoles(Clan.Function func)
Clan
getTopRankedRoles in interface Clanfunc - the function to perform, or null just to return privileged rank
Position,
Clan.Functionpublic int getNumberRoles()
Clan
getNumberRoles in interface Clan
public int getTopQualifiedRoleID(Clan.Function func,
MOB mob)
Clan
getTopQualifiedRoleID in interface Clanfunc - the function (or null) they must be able to domob - the mob to check for a top rank
Position,
Clan.Functionpublic int getRoleFromName(java.lang.String position)
Clan
getRoleFromName in interface Clanposition - the name of the position to look for
public boolean isPubliclyListedFor(MOB mob)
Clan
isPubliclyListedFor in interface Clanmob - the person viewing
public java.lang.String[] getRolesList()
Clan
getRolesList in interface Clanpublic int getMostInRole(int roleID)
Clan
getMostInRole in interface ClanroleID - the role to get a max for
public java.lang.String getRoleName(int roleID,
boolean titleCase,
boolean plural)
Clan
getRoleName in interface ClanroleID - the role code of the role to describetitleCase - whether or not to uppercase the first wordplural - whether or not to return the word as a plural
protected boolean isSafeFromPurge()
public boolean tick(Tickable ticking,
int tickID)
Tickable
tick in interface Tickableticking - a reference to this Tickable objecttickID - the TICKID_ constant describing this periodic call, as defined in Tickable
Tickable,
ServiceEngine,
TickableGroup
public boolean doesOutRank(int highRoleID,
int lowRoleID)
Clan
doesOutRank in interface ClanhighRoleID - firstlowRoleID - second
public void clanAnnounce(java.lang.String msg)
Clan
clanAnnounce in interface Clanmsg - the message to sendpublic java.util.List<Ability> clanAbilities(MOB mob)
Clan
clanAbilities in interface Clanmob - the mob to grant the abilities to
Abilitypublic int numClanEffects(MOB mob)
Clan
numClanEffects in interface Clanmob - the mob to grant the abilities to
Abilitypublic ChameleonList<Ability> clanEffects(MOB mob)
Clan
clanEffects in interface Clanmob - the mob to grant the abilities to
Abilitypublic int applyExpMods(int exp)
Clan
applyExpMods in interface Clanexp - the old experiencepublic MOB getResponsibleMember()
Clan
getResponsibleMember in interface Clanpublic java.lang.String[] getStatCodes()
Modifiable
getStatCodes in interface ModifiableModifiable.getStat(String),
Modifiable.setStat(String, String)public int getSaveStatIndex()
Modifiable
getSaveStatIndex in interface ModifiableModifiable.getStatCodes(),
Modifiable.getStat(String),
Modifiable.setStat(String, String)public boolean isStat(java.lang.String code)
Modifiable
isStat in interface Modifiablecode - the name of the field to read.
Modifiable.getStatCodes()public java.lang.String getStat(java.lang.String code)
Modifiable
getStat in interface Modifiablecode - the name of the field to read.
Modifiable.getStatCodes()
public void setStat(java.lang.String code,
java.lang.String val)
Modifiable
setStat in interface Modifiablecode - the name of the field to setval - the value to set the field toModifiable.getStatCodes()
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||