2011-10-09 21:57:43 +02:00
package com.massivecraft.factions.cmd ;
2011-03-22 15:45:41 +01:00
2011-07-18 22:06:02 +02:00
import com.massivecraft.factions.Conf ;
import com.massivecraft.factions.FPlayer ;
2011-10-09 14:53:38 +02:00
import com.massivecraft.factions.struct.Permission ;
2014-10-13 21:10:18 +02:00
import mkremins.fanciful.FancyMessage ;
import org.bukkit.ChatColor ;
2011-03-22 15:45:41 +01:00
2014-04-04 20:55:21 +02:00
public class CmdInvite extends FCommand {
2014-08-05 17:17:27 +02:00
2014-04-04 20:55:21 +02:00
public CmdInvite ( ) {
2014-07-01 22:10:18 +02:00
super ( ) ;
this . aliases . add ( " invite " ) ;
this . aliases . add ( " inv " ) ;
2014-04-04 20:55:21 +02:00
this . requiredArgs . add ( " player name " ) ;
//this.optionalArgs.put("", "");
2014-07-01 22:10:18 +02:00
this . permission = Permission . INVITE . node ;
this . disableOnLock = true ;
2014-04-04 20:55:21 +02:00
2014-07-01 22:10:18 +02:00
senderMustBePlayer = true ;
senderMustBeMember = false ;
senderMustBeModerator = true ;
senderMustBeAdmin = false ;
2014-04-04 20:55:21 +02:00
}
@Override
public void perform ( ) {
2014-07-01 22:10:18 +02:00
FPlayer you = this . argAsBestFPlayerMatch ( 0 ) ;
if ( you = = null ) {
return ;
}
2014-04-04 20:55:21 +02:00
if ( you . getFaction ( ) = = myFaction ) {
msg ( " %s<i> is already a member of %s " , you . getName ( ) , myFaction . getTag ( ) ) ;
2014-07-01 22:10:18 +02:00
msg ( " <i>You might want to: " + p . cmdBase . cmdKick . getUseageTemplate ( false ) ) ;
return ;
2014-04-04 20:55:21 +02:00
}
// if economy is enabled, they're not on the bypass list, and this command has a cost set, make 'em pay
2014-07-01 22:10:18 +02:00
if ( ! payForCommand ( Conf . econCostInvite , " to invite someone " , " for inviting someone " ) ) {
return ;
}
2014-04-04 20:55:21 +02:00
myFaction . invite ( you ) ;
2014-11-06 01:36:47 +01:00
if ( ! you . isOnline ( ) ) {
return ;
}
2014-04-04 20:55:21 +02:00
2014-10-13 21:10:18 +02:00
// Tooltips, colors, and commands only apply to the string immediately before it.
2014-11-06 01:36:47 +01:00
FancyMessage message = new FancyMessage ( fme . describeTo ( you , true ) ) . tooltip ( " Click to join! " ) . command ( " f join " + myFaction . getTag ( ) ) . then ( " has invited you to join " ) . color ( ChatColor . YELLOW ) . tooltip ( " Click to join! " ) . command ( " f join " + myFaction . getTag ( ) ) . then ( myFaction . describeTo ( you ) ) . tooltip ( " Click to join! " ) . command ( " f join " + myFaction . getTag ( ) ) ;
2014-10-13 21:10:18 +02:00
2014-11-14 20:03:51 +01:00
message . send ( you . getPlayer ( ) ) ;
2014-10-13 21:10:18 +02:00
//you.msg("%s<i> invited you to %s", fme.describeTo(you, true), myFaction.describeTo(you));
2014-04-04 20:55:21 +02:00
myFaction . msg ( " %s<i> invited %s<i> to your faction. " , fme . describeTo ( myFaction , true ) , you . describeTo ( myFaction ) ) ;
}
2011-03-22 15:45:41 +01:00
}