VX 스크립트





ID만들기 스크립트가 VX자료실에 없길래 XP버전에 있는 것을 약간 수정했습니다.

기능에 별다른 이상 없는걸로 알고잇고여 ㅎㅎ (ABS 같은 복잡한 스크립트보다는 아래에 추가하는것이 좋아여 ㅎㅎ)

 

 

 

XP 스크립트를 억지로(?) VX로 변환한거라 그런지 파티원 수가 0이 되면 게임진행이 불가능합니다.

 

 

 

 

 

 

 

↓ 아래부터 스크립트

↓ 아래부터 스크립트

↓ 아래부터 스크립트

 

 

 

 

#=================================================
# ■ 아이디를 띄우기 (스프라이트 구현)
#-------------------------------------------------
#  Author: Bimilist(비밀소년)
#  Desc: 머리위에 아이디를 띄웁니다
#=================================================

class Game_Character
attr_accessor :sprite_id
end

class Sprite_Character < Sprite_Character
def create_id_sprite(text)
bitmap = Bitmap.new(160, 18)
bitmap.font.name = "휴먼매직체"
bitmap.font.size = 14
bitmap.font.color.set(0, 0, 0)
bitmap.draw_text(+1, +1, 160, 16, text, 1)
bitmap.font.color.set(255, 255, 255)
bitmap.draw_text(0, 0, 160, 16, text, 1)
@_id_sprite = Sprite.new(self.viewport)
@_id_sprite.bitmap = bitmap
@_id_sprite.ox = 80
@_id_sprite.oy = 14
@_id_sprite.x = self.x
@_id_sprite.y = self.y - self.oy / 2
@_id_sprite.z = 3000
@_id_sprite_visible = true
end

def dispose_id_sprite
@_id_sprite.dispose
@_id_sprite_visible = false
end

def update_id_sprite
if @character.sprite_id != nil
if not @_id_sprite_visible
create_id_sprite(@character.sprite_id)
end
@_id_sprite.x = self.x
@_id_sprite.y = self.y - self.oy
else
if @_id_sprite_visible
dispose_id_sprite
end
end
end

def update
super
update_id_sprite
end
end


#=================================================
# ■ 아이디를 띄우기 (사용 방법 정의)
#-------------------------------------------------
#  Author: Bimilist(비밀소년)
#  Desc: 머리위에 아이디를 띄웁니다
# Usage: 이벤트 아이디의 이름: [ID(아이디)]
# 주인공은 그딴거 할필요 없음
#=================================================

class Game_Event < Game_Event
def refresh
super
text = @event.name.dup
text.gsub!(/[[Ii][Dd](.+?)]/) do
@sprite_id = $1
end
end
end


class Game_Player < Game_Player
def update
if @sprite_id != $game_party.members[0].name
refresh
end
super
end
def refresh
super
@sprite_id = $game_party.members[0].name
end
end

Comment '20'
  • ?
    rpg좋쿤하 2011.11.08 17:23

    감사합니다^^

  • ?
    푸른초원 2011.11.08 22:18

    사흘전부터 찾고있던자료가 오늘뜨네 ㅋㅋ

  • profile
    꿈빛 2011.11.21 16:54

    감사합니닷 ㅎ

  • ?
    시르 2011.12.24 01:42

    감사합니다.^^

  • profile
    RPG하는사람 2012.01.03 17:57

    감사합니다

  • ?
    제복잇 2012.01.10 18:09

    감사감사!! 혹시 이름 뒤에 그림자 효과 없애는법은 없나요?

  • profile
    쉰라면블랙 2012.01.10 22:28

    좋군요 ^^ 제가 알던 다른거는 스크립트 충돌이 이러났는데, 이건 완벽하네요

  • profile
    쉰라면블랙 2012.01.10 22:28

    좋군요 ^^ 제가 알던 다른거는 스크립트 충돌이 이러났는데, 이건 완벽하네요

  • profile
    심량 2012.01.21 20:13

    오 좋네요ㅎ

    그런데 사용은 어떻게...?

  • ?
    난현이라는 2012.02.20 20:43

    오호! 강사합니다!

    제가 이런거 찾고 있었어요!

  • ?
    비밀비밀 2012.02.26 12:44

    찾던건데` 진짜 감사해요 ㅎ

  • ?
    ♥안녕 2012.04.01 13:10
    NPC 아이디는 안 뜨네요 .....

    주석으로 /이름표시 도 해보고

    [ID       ] 도 해보고...

    다 해봐도 안 뜨는데, 어떻게 해야 하죠?

  • ?
    코스모스필때 2012.07.28 13:27
    ㅋㅋㅋ 휴먼매직체 없어서 바탕체로 바꾸니 잘되네요. 좋네요.
    아이디 안뜨시는 분은 bitmap.font.name = "바탕체"<<< 여기 휴먼매직체 되어있는걸 바탕체나 있는 폰트로 바꾸세요.
  • ?
    이리엘 2012.08.01 19:40
    감사합니다.그림자 없애는 것 가능한가요?;;
  • profile
    곰장수 2012.10.10 00:13
    아아..이유는 몰라도 이 스크립트를 쓰면
    어느순간부터 계속 튕겨서 꺼져버리네요..혹시 저만 그런건가요?
  • ?
    tony 2012.10.11 14:50
    오류가 있다고 하는데요??
  • ?
    톨톨 2012.10.16 11:17
    스크립트에서 70번 줄 text.gsub!(/[[Ii][Dd](.+?)]/) do
    이 부분을 text.gsub!(/\[[Ii][Dd](.+?)\]/) do로 바꾼 후에
    이벤트 이름을[ID이름]으로 바꿔주시면 NPC처럼 이벤트 캐릭터 위에도 이름이 뜹니다.
    일단 표시는 제대로 됩니다.

    그림자가 보기 싫다면 17, 18번 줄을 주석 처리 해주시면 됩니다만, 글씨 주변에 얇은 테두리가 생기는 건 없앨 수 없는 것 같습니다.

    개인적으로 보기 편하려고 14~24번째 줄 부분에 주석을 달아놓았는데
    텍스트의 형태를 수정하고 싶은 분들이 계실 것 같아서 적습니다.

    bitmap = Bitmap.new(360, 20) #가로영역, 세로영역
    bitmap.font.name = "나눔고딕"
    bitmap.font.size = 13
    bitmap.font.color.set(0, 0, 0) #그림자 색상
    bitmap.draw_text(+1, +1, 360, 30, text, 1) #그림자(가로위치,세로위치,가로영역,세로영역)
    bitmap.font.color.set(255, 255, 255) #글씨 색상
    bitmap.draw_text(0, 0, 360, 20, text, 1) #글씨(가로위치,세로위치,가로영역,세로영역)
    @_id_sprite = Sprite.new(self.viewport)
    @_id_sprite.bitmap = bitmap
    @_id_sprite.ox = 180 #캐릭터 기준 가로위치 (가로영역의 절반 값으로 입력)
    @_id_sprite.oy = 20 #캐릭터 기준 세로위치


    이 스크립트에 조금 문제가 있는데 이름 입력 이벤트로 주인공 이름을 변경하게 되면, esc로 메뉴 진입을 한번 해야 캐릭터 머리 위의 이름이 바뀝니다.
    제가 수정 가능한 부분인진 모르겠지만 해보고 정 안 되면 질문 게시판으로 가야겠네요..ㅠㅠ

    거저 알려주긴 싫어서 좀 주절 거리자면,
    저도 초보이지만 npc이름 표시는 npc이름을 표시하는 xp스크립트를 찾아서 이 스크립트와 다른 점을 비교해서 수정한거고,
    텍스트에 관한 설명을 덧붙인 건 하나하나 값을 변경하고 테스트 하면서 나온 결과입니다.
    굉장히 심플한 스크립트인데도 저같은 초보자는 검색하고 분석하고 테스트 해보는데 2~3시간이 걸렸어요.
    투자한 시간에 비해서 결과물은 간단하지만 시간 아깝다는 생각 안 합니다.
    이런게 다 배우는 과정 일테니까요.
    아무 것도 안 하고 키보드 몇 번 두들겨서 답을 찾으려는 분들이 너무 많은거 같아서 주절거렸습니다.
    뭐든지 익히려면 근성이 필요해요.

    뭐 대단한거 수정한 것도 아니면서 생색 내는 것 처럼 보일 수도 있지만 대단한게 아니기 때문에 다른 분들도 충분히 하실 수 있는거라고 봅니다.
    여러분 근성을 키웁시다^.^
  • profile
    생비나 2012.12.31 21:34
    감사합니다~
  • ?
    ☆권지용☆ 2013.01.22 10:54
    초보라뇨~ 님이 초보면 저는..... 접어야되는겨? ㅋㅋ
    초보는 아니에요. 초보는 스크립트를 보기만 해도 어질... ㅋ
  • ?
    신유민 2015.12.13 22:01
    감사감사!! 혹시 이름 뒤에 그림자 효과 없애는법은 없나요?

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 3 습작 2012.12.24 5455
130 기타 Gamepad Extender VX 습작 2015.01.02 676
129 기타 장애물을 피하고 다가오게 하는 스크립트 5 file 박력남 2014.02.25 1896
128 기타 Resize and Scale by OriginalWij 1 습작 2013.05.13 1354
127 기타 reijubv - New Balloon Command (VXA에서도 작동) 1 file 혜인 2013.04.08 1333
126 기타 MSX - XP Characters on VX/VX Ace 2 Alkaid 2013.01.26 1349
125 기타 Fullscreen++ by Zeus81 (VX/VXA) 2 Alkaid 2012.09.01 2233
124 기타 Etude87_GAGA_Chat 4 습작 2012.06.14 1918
123 기타 Etude87_Hangul_utf8_List 습작 2012.06.04 1668
122 기타 078656577er님의 스크립트를 개조한, 사격용 스크립트 1 file 타코 2012.03.16 2520
121 기타 멥 이름 띄우기 10 신규회원 2012.02.24 3630
120 기타 화면 해상도(640 X 480) 스크립트 6 file 쿠쿠밥솥 2012.01.10 3977
» 기타 아이디를 띄우기 20 12345678 2011.11.07 4629
118 기타 Kylock1.2+(RMDude-Kylock1.5) Time System Script 4 file communnn 2011.10.20 2597
117 기타 [XP / VX 공용] rand() 함수 확장 스크립트 4 허걱 2011.09.13 2365
116 기타 여러스크립트(목적은 포인트) 12 file 인생은 힘들다. 2011.08.26 3090
115 기타 요리 시스템을 도입하는 스크립트입니다. 9 file 스페나로츠 2011.08.18 3148
114 기타 화면 확대 스크립트 12 file 에돌이 2011.07.22 3065
113 기타 해상도 변경 스크립트 11 카리스 2011.07.19 2727
112 기타 KGC counter 스크립트. 반격기 추가스크립트입니다. 4 우켈킁 2011.03.31 1814
111 기타 IEX - Script Library 1.0 by IceDragon 8 Alkaid 2011.01.11 2627
Board Pagination Prev 1 2 3 4 5 6 7 Next
/ 7