Jump to content

Recommended Posts

Posted

This is an unique Faction System. Same as the well-known GvE engines, but it's a bit different.

This is a gender-based GvE engine, with a really special reward.

We're recommend to use this engine with player Naked Mode without clothes.

 

/*
* This program is a private software, based on java source code.
* To share, distribute or redistribute this software is forbidden,
* except if someone approve it from RaveN Network INC. team.
* 
* Copyrights (c) 2012 RaveN Network INC. All rights reserved.
*/
package custom.genderGvE;

import net.l2emuproject.gameserver.gameobjects.L2Character;
import net.l2emuproject.gameserver.gameobjects.L2Player;
import net.l2emuproject.gameserver.model.restriction.global.AbstractRestriction;
import net.l2emuproject.gameserver.model.restriction.global.GlobalRestrictions;
import net.l2emuproject.gameserver.model.restriction.global.GlobalRestrictions.CombatState;
import net.l2emuproject.tools.random.Rnd;

/**
* @author lord_rex
* 	<br> This is an unique Faction System. Same as the well-known GvE engines, but it's a bit different.
* 	<br> This is a gender-based GvE engine, with a really special reward.
* 	<br> We're recommend to use this engine with player Naked Mode without clothes.
*/
public final class UniqueFactionRestriction extends AbstractRestriction
{
@Override
public CombatState getCombatState(L2Player activeChar, L2Player target)
{
	// feel free to attack players if the gender is different
	if (hasDifferentGender(activeChar, target))
		return CombatState.ENEMY;

	return CombatState.NEUTRAL;
}

@Override
public boolean canInviteToParty(L2Player activeChar, L2Player target)
{
	if (hasDifferentGender(activeChar, target))
	{
		activeChar.requestFailed("You cannot invite different gender players to your party!");
		return false;
	}

	return true;
}

@Override
public boolean playerKilled(L2Character activeChar, L2Player target, L2Player killer)
{
	if (hasDifferentGender(target, killer))
	{
		killer.sendMessage("Congratulation! You've killed one of the different gender! Your reward is a random porn URL: "
				+ getRandomPornURL());
		return true;
	}

	return true;
}

private String getRandomPornURL()
{
	switch (Rnd.get(3))
	{
		case 0:
			return "http://www.youngpornvideos.com/galleries/0515/69578/teenage-blonde-cutie-alyona-smashed-in-her-tight-a.php";
		case 1:
			return "http://www.youngpornvideos.com/galleries/0746/32082/teen-getting-fucked-and-taking-creampie.php";
		case 2:
			return "http://www.youngpornvideos.com/galleries/0215/69821/big-ass-blondie-girlfriend-tries-out-hardcore-anal.php";
		default:
			throw new InternalError();
	}
}

@Override
public int getNameColor(L2Player activeChar)
{
	return getGenderColor(activeChar);
}

@Override
public int getTitleColor(L2Player activeChar)
{
	return getGenderColor(activeChar);
}

private int getGenderColor(L2Player activeChar)
{
	if (isFemale(activeChar))
		return 0xFF00FF;

	if (isMale(activeChar))
		return 0xFF0033;

	return -1;
}

/**
 * @param activeChar
 * @param target
 * @return gender is different or no
 */
private boolean hasDifferentGender(L2Player activeChar, L2Player target)
{
	// activeChar is female and target is male
	if (isFemale(activeChar) && isMale(target))
		return true;

	// activeChar is male and target is female
	if (isMale(activeChar) && isFemale(target))
		return true;

	return false;
}

private boolean isFemale(L2Player activeChar)
{
	return activeChar.getAppearance().getSex();
}

private boolean isMale(L2Player activeChar)
{
	return !activeChar.getAppearance().getSex();
}

public static void main(String[] args)
{
	GlobalRestrictions.activate(new UniqueFactionRestriction());
}
}

Posted

private boolean hasDifferentGender(L2Player activeChar, L2Player target)
{
	// activeChar is female and target is male
	if (isFemale(activeChar) && isMale(target))
		return true;

	// activeChar is male and target is female
	if (isMale(activeChar) && isFemale(target))
		return true;

	return false;
}

==

private boolean hasDifferentGender(L2Player activeChar, L2Player target)
{
	return isMale(activeChar) != isMale(target);
}

 

thx for share :)

Posted

private boolean hasDifferentGender(L2Player activeChar, L2Player target)
{
	// activeChar is female and target is male
	if (isFemale(activeChar) && isMale(target))
		return true;

	// activeChar is male and target is female
	if (isMale(activeChar) && isFemale(target))
		return true;

	return false;
}

==

private boolean hasDifferentGender(L2Player activeChar, L2Player target)
{
	return isMale(activeChar) != isMale(target);
}

 

thx for share :)

np. btw mine one is more understandable :P

Posted

less code = better

Of course. But my version is more obviously for non-java-knowing-noobs.. and this changeset is a FUN section :)

 

PS: I could even use...

public boolean hasDifferentGender(final L2Player player, final L2Player target)
{
	return player.getAppearance().getSex() != target.getAppearance().getSex();
}

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...