사이트 로그인
2016.06.24 16:21
public void set_currentHp(int currentHp){
_currentHp = currentHp;
if (_currentHp >= get_temphp()){
stopHpRegeneration();
_currentHp = get_temphp();
}else if(_currentHp <= 0){
hpCK = false;
stopHpRegeneration();
stopMpRegeneration();
_currentHp = 0;
if(this instanceof L1PcInstance){
L1PcInstance cha = (L1PcInstance)this;
//-- 나에게 보내기
cha.sendPackets(cha.get_netConnection().bph().get_CharAction().S_DoAction(cha.get_objectId(), 8), true, true);
cha.set_status(8);
cha.set_isdead(true);
cha.set_food(0);
버프세팅(cha);
if(cha.get_level()>10)
{
CalcExp.getInstance().penal_exp(cha);
cha.sendPackets(cha.get_netConnection().bph().get_ocs().S_OwnCharStatus(cha), true);
}
if(cha.get_lawful() == 98303){ // 만라일때 않떨구는 부분 <<< 만라일때
} <<< 아무일 없이 닫음
if(cha.get_lawful() < 98303){
///////// 아이템 떨구는 부분..
int isdrop = 0; //아이템 떨굴 확률
int c_law = 0; //임시로 캐릭터의 라우풀수치로 떨구를 확률를 계산하기 위한..변수
//32926 --> 이게 풀카오 수치
//65536 --> 이게 뉴트럴 수치
//98303 --> 이게 만라풀 수치
c_law = (int)(cha.get_lawful()/10000); //캐릭터의 라우풀 수치 나누기 10000을 하여 확률을 계산
// 풀라일때는 않떨굼 , 뉴트럴 40%, 풀카오 70% 확률로 떨굼..
isdrop = cha.getRnd().nextInt(10)+1; //떨굴 확률...위한 변수
if(isdrop > c_law ){ // 랜덤으로 뽑아온 isdrop이 작을때... 아이템 떨구기 시작.
L1ItemInstance[] temp = cha.get_cil().getAllItems();
////////////////// 만라와 카오계산 떨굴 확률 및 갯수 계산
int count = 0; //떨구는 갯수
if(c_law == 3){ // 풀카오라면
count = cha.getRnd().nextInt(2) + 2;
}
else if(c_law == 4){
count = cha.getRnd().nextInt(3) + 1;
}
else if(c_law == 5){
count = cha.getRnd().nextInt(2) + 1;
}
else if(c_law == 6){
count = cha.getRnd().nextInt(2);
}
else if(c_law > 6){
count = cha.getRnd().nextInt(2);
}
for(int i=0 ; i < count ; ++i){
if(true){
int loc = cha.getRnd().nextInt(temp.length)+1;
if(temp[loc].getItem().getType2() == temp[loc].getItem().TYPE2_ETC) //만약 떨굴 아이템이 ETC 아이템이라면
{
while (temp[loc].getItem().getItemId() != 1);// ETC 아이템 중에서 아데나가 안될때까지..While 문 가동..
{
loc = cha.getRnd().nextInt(temp.length)+1;
}
}
if(temp[loc].isEquipped()){ // 착용중이였다면
if(temp[loc].getItem().getType2() == temp[loc].getItem().TYPE2_WEAPON){ // 무기라면
if((temp[loc].getItem().getType1() == temp[loc].getItem().WEAPON_TOHANDSWORD) ||
(temp[loc].getItem().getType1() == temp[loc].getItem().WEAPON_BOW) ||
(temp[loc].getItem().getType1() == temp[loc].getItem().WEAPON_BLUNT) ||
(temp[loc].getItem().getType1() == temp[loc].getItem().WEAPON_SPEER) ||
(temp[loc].getItem().getType1() == temp[loc].getItem().WEAPON_EDORYU) ||
(temp[loc].getItem().getType1() == temp[loc].getItem().WEAPON_CLAW)){
cha.set_TwoSword(false);
}
if(temp[loc].getItem().get_nameid().equalsIgnoreCase("$1063") ||
temp[loc].getItem().get_nameid().equalsIgnoreCase("$2003") ){ // 마나 지팡이 라면
cha.set_마나지팡이(false);
}
cha.set_무기(false);
cha.set_currentWeapon(0);
temp[loc].setEquipped(false);
cha.setDmg_small(0); // 스몰 데미지 설정.
cha.setDmg_large(0); // 라지 데미지 설정.
cha.setEnchantlvl(0); // 인첸 레벨 설정.
ItemHandler.getInstance().op(cha, temp[loc], false);
}else{ // 방어구 라면
ItemHandler.getInstance().handler(cha, temp[loc]);
ItemUse.getInstance().armor(cha, temp[loc]);
}
//-- 셋트 아이템
SetItem setitem = SetItemTable.getInstance().getTemplate(temp[loc].getItem().get_setItem());
if(setitem != null){
if(cha.setITEM(setitem.get_id(), setitem.get_count(), temp[loc].isEquipped())){
// 풀셋 옵션 적용
cha.set_풀셋(true);
ItemUse.getInstance().SetOption(cha, setitem, true, false);
}else{
if(cha.get_풀셋()){
// 플셋 옵션 해제
cha.set_풀셋(false);
ItemUse.getInstance().SetOption(cha, setitem, false, false);
}
}
}
}
temp[loc].set_x(cha.get_x());
temp[loc].set_y(cha.get_y());
temp[loc].set_map(cha.get_map());
while(true){
temp[loc].set_objectId(IdFactory.getInstance().getNextId());
if(L1World.getInstance().storeObject(temp[loc])){
break;
}
}
//-- 나에게 보내기
cha.sendPackets(cha.get_netConnection().bph().get_NewObjectPack().S_ITEMPack(temp[loc]), true, true);
cha.sendPackets(cha.get_netConnection().bph().get_Item().S_ItemDelete(temp[loc]), false);
cha.get_cil().removeItems(temp[loc]);
//-- 무게 세팅
cha.set_weight(cha.get_weight() - (temp[loc].getItem().getWeight()*temp[loc].getCount()));
cha.sendPackets(cha.get_netConnection().bph().S_Status(cha, 0), true);
}
}
}
}
}else if(this instanceof L1NpcInstance){
L1NpcInstance npc = (L1NpcInstance)this;
if((npc.getNpcTemplate().get_npcId()!=60503)&&(npc.getNpcTemplate().get_npcId()!=60504)){
if(npc.getNpcTemplate().getCandie()){ // 죽는 다면
//-- 월드맵 오브젝트 삭제
L1World.getInstance().removeVisibleObject(npc);
npc.AllsendPackets(npc.bph().get_CharAction().S_DoAction(npc.get_objectId(), 8), true);
npc.set_status(8);
npc.set_isdead(true);
if(npc instanceof L1MonsterInstance){
L1MonsterInstance mon = (L1MonsterInstance)this;
if(mon.Fight){ // 전투중이였다면
mon.Fight = false;
}
}else if(npc instanceof L1SummonInstance){
L1SummonInstance pet = (L1SummonInstance)this;
DiePet dp = new DiePet(pet);
dp.start();
}else{
ReSpawn rs = new ReSpawn(npc);
rs.start();
}
}else{ // 안죽는 다면
}
}
}
}else if(!_hpRegenActive && !is_isdead()){
hpCK = false;
startHpRegeneration();
}
if(!hpCK){
if(this instanceof L1PcInstance){
L1PcInstance cha = (L1PcInstance)this;
cha.sendPackets(cha.get_netConnection().bph().get_HP_MP_EXP().S_HPUpdate(cha), true);
if(cha.get_PartyOn()){ // 파티중이라면
cha.get_Party().SendMiniHP(cha, false);
}
}else if(this instanceof L1PetInstance){
L1PetInstance pet = (L1PetInstance)this;
pet.get_SummonOwn().sendPackets(pet.get_SummonOwn().get_netConnection().bph().S_HitRatio(pet), true);
}else if(this instanceof L1SummonInstance){
L1SummonInstance pet = (L1SummonInstance)this;
pet.get_SummonOwn().sendPackets(pet.get_SummonOwn().get_netConnection().bph().S_HitRatio(pet), true);
}
if(_currentHp >= get_temphp()){
hpCK = true;
}
}
[출처] (비공개 카페)
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
공지 | 소스자료는 직접 올려주세요 | 게임존 | 2017.06.06 | 550 |
259 | 아이템 표기 번호 | 준희미니 | 2016.06.27 | 137 |
258 | 금화주머니 나름 초간단; [1] | 준희미니 | 2016.06.27 | 49 |
257 | 공격석 (정령탄 | 준희미니 | 2016.06.27 | 26 |
256 | 허접한 용계 리뉴얼 | 준희미니 | 2016.06.27 | 60 |
255 | 호랑이,진돗개 펫일때 부활안되는부분 | 준희미니 | 2016.06.27 | 50 |
254 | 던젼 특정장소갈때 열쇠체크하고 가기? %추가% | 준희미니 | 2016.06.27 | 38 |
253 | 5단룬적용하기 | 준희미니 | 2016.06.27 | 105 |
252 | 4색데스&진데스간단하게적용해보쟝 | 준희미니 | 2016.06.27 | 209 |
251 | 하이네 텔레포트 트랩 | 준희미니 | 2016.06.27 | 23 |
250 | 반지 착용 제한 | 준희미니 | 2016.06.27 | 42 |
249 | eva)3.80 // 변신레벨에 따른 공속의 변화를 주자 | 준희미니 | 2016.06.27 | 224 |
248 | 드래곤의 연금술 용액 | 준희미니 | 2016.06.27 | 29 |
247 | 화룡의 안식처 | 준희미니 | 2016.06.27 | 34 |
246 | 10주년 아이템 강화하자 //질문있습니다 | 준희미니 | 2016.06.27 | 18 |
245 | 와우 1.38 게시판이 열렸네요, 슈롬에 올렸던건데 | 준희미니 | 2016.06.27 | 108 |
244 | 실제 방어구 적용 소스 | 준희미니 | 2016.06.27 | 75 |
243 | 1.38 운영자계정 확인법 | 준희미니 | 2016.06.27 | 79 |
242 | 유저 피바 [2] | 준희미니 | 2016.06.27 | 125 |
241 | 카스파 패밀리 | 준희미니 | 2016.06.27 | 69 |
240 | 1.38 어밴 소스 입니다 | 준희미니 | 2016.06.27 | 28 |
239 | 1.38 버전 왕관 주기 소스 입니다 | 준희미니 | 2016.06.27 | 38 |
238 | 1.38 버전 데미지 업 물약 소스 입니다 | 준희미니 | 2016.06.27 | 37 |
237 | 1.38 겜블 소스 입니다 | 준희미니 | 2016.06.27 | 102 |
236 | 모든몹과 NPC가 말하는 소스입니다 | 준희미니 | 2016.06.24 | 183 |
235 | [[ 템삭제 ]] | 준희미니 | 2016.06.24 | 54 |
234 | 군주 스킬 아이콘 만들기 | 준희미니 | 2016.06.24 | 64 |
233 | 덱방을 알아보자.. | 준희미니 | 2016.06.24 | 56 |
232 | 소환몹 데미지 부분 흠 | 준희미니 | 2016.06.24 | 86 |
231 | 윈성 용병대장에게서 폭풍의칼날단 받는소스 입니다 | 준희미니 | 2016.06.24 | 32 |
230 | 빈주문서추가 | 준희미니 | 2016.06.24 | 67 |
229 | 공성시간 자동 돌리기 | 준희미니 | 2016.06.24 | 67 |
228 | 헤이스트 아이템 헤이스트효과구현 | 준희미니 | 2016.06.24 | 35 |
227 | 공성 성주혈외에 강제텔레포트.txt | 준희미니 | 2016.06.24 | 32 |
226 | 다엘(이도류,크로우)효과수정.txt | 준희미니 | 2016.06.24 | 82 |
225 | 라던_전층_주문서.txt | 준희미니 | 2016.06.24 | 46 |
224 | 마법사용시 카오적용.txt | 준희미니 | 2016.06.24 | 22 |
223 | 마법서복권.txt | 준희미니 | 2016.06.24 | 54 |
222 | 마법투구 헤이스트추가.txt | 준희미니 | 2016.06.24 | 33 |
221 | 마수군왕의 징표함 적용.txt | 준희미니 | 2016.06.24 | 34 |
220 | 프리징 블리자드 적용소스.txt | 준희미니 | 2016.06.24 | 47 |
219 | 상아탑 3층 텔 및 오렌 상아탑 텔. 안되시는분들 | 준희미니 | 2016.06.24 | 55 |
218 | 보스 스폰시 y/n 메시지 | 준희미니 | 2016.06.24 | 98 |
» | 만라우풀일때 아이템 안떨구기.txt | 준희미니 | 2016.06.24 | 90 |
216 | 안톤 제작 | 준희미니 | 2016.06.24 | 43 |
215 | 점팩 ui5차 화면 반경 설정 | 준희미니 | 2016.06.24 | 29 |
214 | vc2010..접속기 만드는 소스?? ( 초보자 ) [6] | Freedos82 | 2016.06.10 | 490 |
213 | 신규보호 외부화 | 연구사원 | 2016.06.07 | 99 |
212 | 특정무기 인첸 제한 걸기 | 연구사원 | 2016.06.07 | 164 |
211 | 특정레벨 도달시 자동혈탈퇴 소스(중립 혈 / 신규혈) 등등 | 연구사원 | 2016.06.07 | 62 |
210 | 스턴이걸리는무기,아이스가날라가는활을 만들자!!!ㅋ | 연구사원 | 2016.06.07 | 313 |